Questions before starting large project

I have a few questions before starting a large project with SC.

  1. Does SC automatically provide row level locking with MyIsam files? What about Innodb?
  2. Is there a limit on the number of nested tables/grids? For example, could I have 5 or six cascading subsidiary tables in the nest?
  3. Are libraries duplicated for each app or project, or once the libraries are on the production server once, is that then all that is needed for multiple apps and projects?
  4. If SC version is updated , do I then redeploy and with all libraries?

Thanks greatly,

Lyle

  1. Not sure.
  2. No if you don’t want. You can sepecify on Advanced deployment where SC libs are.
  3. SC V8 for example has some applications redesigned, and some new charts AFAIK. Then, you have to deploy libs if you move from 7 to 8. But libs are just 100MB

Hi Giu,

Thank you for your quick response. Much appreciated!!

Lyle

  1. There is no such thing as row locking with MySQL as with ‘select for update’ (oracle). InnoDB has the advantage above MyIsam that it allows referential integrity.
  2. Nested tables/grids are all loaded into memory before displaying. That has it’s drawbacks in initial responsetimes. Also large resultsets will have large impact. So theorectial no, but practical yes and it depends on the resultset.
  3. see Giu
  4. In principle only after big version release like 7 -> 8. But you never can be sure and the logfile of changed files should answer that question.

Hi Albert,

Good to hear from you.

If I understand then, I would need my tables to be InnoDB if I want RI in ScriptCase, correct and Innodb could not provide row locking? I thought I read that an advantage of Innodb is row locking though. Here’s one thing I saw:

http://dev.mysql.com/doc/refman/5.0/en/innodb-locking-reads.html  

InnoDB supports two types of locking reads:

SELECT … LOCK IN SHARE MODE sets a shared mode lock on any rows that are read. Other sessions can read the rows, but cannot modify them until your transaction commits. If any of these rows were changed by another transaction that has not yet committed, your query waits until that transaction ends and then uses the latest values.hing I found, but maybe it doesn’t apply to SC?

Thank you.

Lyle