V4RB - Aggregate Functions, Permissions

Ruslan Zasukhin sunshine at public.kherson.ua
Sat Aug 27 00:45:58 CDT 2005


On 8/26/05 10:59 PM, "RB User" <fitzbew at nc.rr.com> wrote:

> Hi,
> 
> One of my apps requires the user to download a small Valentina db file that
> is used by my app to populate some arrays and dictionaries.  The app does
> not overtly write to the db file, but Valentina may be doing some indexing
> or such.
> 
> Under Mac OS X, if a user downloads the db file via a browser and runs the
> app, all is well.  No problems are encountered by my application.
> 
> But if another user logs in on the same OS X machine under another User ID,
> Valentina fails when building a recordset that uses an aggregate function:
> 
> "Select Min(Date_from_YYYY) from allmyrecords"
> 
> No error is reported to Valentina( error strings and error code is not
> populated), the recordset is just Nil.
> 
> Other read-only recordsets built without aggregate functions are created
> with no difficulty by any user on the same machine.

So other user, not only login into own account, but ALSO start to use your
application ???

And he try access THE SAME db files on HDD?
Hmm, actually this will not work I think...
 
The aggregative queries make result tables in the TMP volume, which is
located in the system TMP folder.

It sounds like other user do not have permission to access that files..

> Permissions-wise, the db file Owner is the user that downloaded and
> installed the app. Other users on the same machine have only Read access to
> the db file.

Ok, Read access...but when second user try READ is db already opened by
another user ?
 
> The second user (permissions-wise) has only Read access to the DB, which
> should be fine, no writing is necessary.

 
> I found an entry in the Valentina discussions archive that says Valentina
> must build a file in the user's Temp directory when an aggregate function is
> used.

Right. This is when we talk about Valentina 2.0

Valentina 1.x have build results in the .ind file.
IF db was marked as read-only, then no access to .ind file,
So Valentina 1.x also did go to TMP folder.

> I'm confused because the second user (the non-Owner) should have write
> access to their own Temp directory, yet Valentina still breaks.

But again main question:

    when second user try access is DB already opened ?
    if yes then I think this will not work.

You can have access to the same db files (shared access) only if files
itself are marked as READ ONLY. But you say you want that one user can do
writes ?
 
> I have worked around the issue by just extracting a full recordset, sorting
> it, and then pulling off the first record.
> 
> Is my interpretation of the problem correct?  Any other workarounds? (Aside
> from the one I am using now.) Should I try to manipulate the file
> permissions within RB?
 
> (I cannot upgrade to Valentina 2.X, until encryption is in place.)

Aha, so you talk about 1.x

Actually encryption already in place.
Bob have test 2.05 b12 and say he have not found any problems in his
applications using encryptions.

Today was already 2.0.5 b13 build.

MAY BE you need to use Vserver for your task?


-- 
Best regards,

Ruslan Zasukhin
VP Engineering and New Technology
Paradigma Software, Inc

Valentina - Joining Worlds of Information
http://www.paradigmasoft.com

[I feel the need: the need for speed]




More information about the Valentina mailing list