Re: dynamic tablenames


As far as I understand this can’t be a problem since nothing is shared
between individual rails processes.
Someone correct me if I’m wrong…


From: [email protected]
[mailto:[email protected]] On Behalf Of Russell N.
Sent: dinsdag 23 januari 2007 15:32
To: [email protected]
Subject: [Rails] Re: dynamic tablenames

I’m doing a similar thing [setting information about the
database on-the-fly] but I’m having to change a model’s
table_name_prefix. The one concern I have [though it hasn’t come up so
far] is the possibility of two requests being made at the same or close
to the same time and one mistakenly using the others’ setup. I’m
thinking of using transactions, perhaps. I dunno but I too am interested
in if anyone else has done on-the-fly type database configuring.


On 1/23/07, Piet H. [email protected] wrote:

Hi List!

May I tap into your combined common sense ?
I have a legacy logging app that needs to be modernized.

At the moment, Data is going to be stored in 5 tables, one table is
going to contain more than 200 million and 2 others about 60 million
rows. Mysql will be used, unless someone sees a major advantage in using
something else (at the moment data is stored in a raw positioned file
format, which I’m not keeping).

For performance reasons I'm thinking about storing the

data for each entity in separate tables. So instead of a ‘logdata’ table
with >200 million rows, I’d create ‘logdata_001’, ‘logdata_002’,…
tables where the rowcount of even the biggest entity logdata stays below
3 million.

Rails seems to have no problem with me setting the

tablename (set_table_name) on each incoming request before accessing the
I have this gut feeling though I’m overlooking something
Anyone have any comments/suggestions ? Am I about to
create my own personal maintenance nightmare ?

Thanks in advance for your insights!