Forum: Ruby on Rails Re: dynamic tablenames

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
364025223fa593e2e76111b31d76f406?d=identicon&s=25 Piet Hadermann (piet)
on 2007-01-23 16:17
(Received via mailing list)

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...



[] On Behalf Of Russell Norris
  Sent: dinsdag 23 januari 2007 15:32
  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 Hadermann <> 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!

This topic is locked and can not be replied to.