ets

Erlang/ets: reset ets table after getting a "bad argument"?

I've been learning how to use ets, but one thing that has bothered me is that, occasionally*, ets:match throws a bad argument… And, from them on, all subsequent calls (even calls which previously worked) also throw a bad argument: > ets:match(Tid, { [$r | '$1'] }, 1). % this match works... % Then, at some point, this comes up: ** excep...

gen_server with a dict vs mnesia table vs ets

Hi, I'm building an erlang server. Users sends http requests to the server to update their status. The http request process on the server saves the user status message in memory. Every minute the server sends all messages to a remote server and clear the memory. If a user update his status several times in a minute, the last message ove...

Using ETS Select To Form An Intersection

i have the following ets structure: SomeTable = ets:new(sometable, [bag]). ets:insert(SomeTable, [ {set1,item1}, {set1,item2}, {set1,item3}, {set2,item1}, {set2,item2}, {set2,item4}]). i want ...

Erlang: Find intersections in a ets table

I have an ets with the next items: [at, {other_place}, me], [other_place, {place}, {other_place}]], [at, {place}, me], [on, {surface}, {object}], [small, {object}] And I have the list [[at, door, me],[on, floor, chair],[small, bannanas]] I need to compare every item in the ets table to an item in the list and if the first one is the ...