473,395 Members | 1,941 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

dbm file locking with different versions of perl

Hello,

Recently we made some fairly significant upgrades...going from Solaris 5.6
to Solaris 5.8 (Solaris 8). Along with this, we decided to upgrade from
perl 5.005_03 directly to perl 5.6.0. Although this was a fairly
significant jump (especially in perl versions), our applications are such
that the testing was fairly straight-forward and we did not run into many
problems. However, I've run into one that I hope to find some answers to.

We have one application that uses a series of dbm files for data storage.
The dbm file is opened using "dbmopen(my %dbm, $dbm, undef)". Under the old
operating system and version of perl, everything ran fine. In fact,
everything runs fine under the new scenario except when simultaneous
executions of the script access the same dbm file (this worked before). We
get a "Resource is temporarily unavailable" error message on the second
execution and the second execution fails. The first finishes without
problem. Once the first has finished another can be run without problem.

My guess is that something has changed in either the new OS or in the new
version of perl with how the dbm files are managed/locked. In order to test
this, I reverted back to 5.005_03 on the new OS and am still able to
reproduce these results...so I'm now thinking that the OS is not the culprit
but something in how perl 5.6.0 (or another version post 5.005_03) handles
dbm files. The jump from 5.005 to 5.6.0 is fairly big so I'm not sure if it
is a change in 5.6.0 itself or just something new to us since that is our
next version. We made the jump to better be able to handle unicode support
as it evolves. I am planning on upgrading 5.6.0 fairly soon but need to
resolve this issue first.

Any thoughts on what happened and possible solutions would be greatly
appreciated! Thanks.

Matt
Jul 19 '05 #1
0 1695

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

14
by: Xah Lee | last post by:
Just bumped into another irresponsibility in perl. the crime in question this time is the module File::Basename. Reproduction: 1. create a directory containing a file of this name:...
1
by: Julia Bell | last post by:
I would like to run the same script on two different platforms. The directory in which the script(s) will be stored is common to the two platforms. (I see the same directory contents regardless...
3
by: Hugz | last post by:
Hello, And Thank you for taking time to help me.Myself Hugz.I am new to perl and want to write my own Scripts.But i can't understand how perl "rename" function and "file locking" works. ...
2
by: Scott Bryce | last post by:
I am creating a CGI application in Perl that uses an Access database. It will be hosted on an NT server. I have used flat file DBMs (tied hashes) on UNIX servers, but I am not familiar with how...
3
by: swingingming | last post by:
Hi, for 5 weeks, I finished my mdb project. Thanks to all you guys. Now, I would like to put it on a server then 5-6 people can share it. I heard about the splitting back-end database, put it on a...
2
by: Corne' Cornelius | last post by:
Hi, When you open a file for writing/appending with open() or fopen(), and you have multiple applications that might want to write to the same file at the same time, could that cause weirdness...
13
by: George | last post by:
Hi, I am re-writing part of my application using C#. This application starts another process which execute a "legacy" program. This legacy program writes to a log file and before it ends, it...
1
by: Mark S. | last post by:
Hello, My c# aspx 2.0 web application has a static class. I would like to add a dataTable to it and have the heavy load (+100 requests a second) update it's values. This is the first time I used...
15
by: Matt Brandt | last post by:
I am trying to get multiple threads to lock specific regions of a file. However, since each thread has the same PID, it appears that a lock by one thread does not block another thread from the same...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.