Fortunately for you, deleting the first (or last) element of an array (shift(@a)) is very fast (O(1)) in Perl. | [reply] [d/l] |
There is one problem though, the values to be check against the array come from a db which is splitted into several files, so their names something0001,something1000 should be ordered but @files = sort { $a <=> $b } @files causes the IDE to freeze. What can be wrong? tx.
| [reply] |
A side note ... The records may be sorted but will not be returned as such when not asked, if database server is Sybase 15.0.x.
| [reply] |
Even more of a side note - one should never rely on the inherent ordering of data in a SQL database. Any ordering is a side effect of the storage mechanism, and can change (for example due to parallel query engines).
Always use an ORDER BY clause if the order of the returned data is significant in any way!
Michael
PS - for Sybase it's not only ASE 15.0.x that has this behavior - it's any table that has row-level locking (DOL), or if you have partitioned tables, or if you use parallel queries.
| [reply] |
Currently being trained on the job as a DBA (to a level enough to keep servers working), I appreciate your post script much. In any case, change from all-page lock to any other locking scheme won't come as shocking surprise now (w.r.t. output ordering) after switching from 12.0 to 15.0.x.
| [reply] |