Hi.....I am getting this error message: ERROR: A lock is not available for WORK.ListA. I have tried rebooting and sometimes its a different dataset that the error message pops up. I ran this same code before and never received this error message. Is this something that is on the SAS end or the Server where the datasets are stored. Thanks.
Hi SASKiwi.....I run the code in SAS Enterprise and have been running the same code many times before. When I reboot it seems that dataset where a lock is not available for WORK changes. From the log, this error occurs during the process of deleting the datasets. Thanks
2748 proc datasets nolist; 2749 delete PostalCodesCorrections AddressList AddressList1 AddressList2 AddressList3 AddressList4 AddressList5 AddressList6 2749 ! AddressList7 AddressList8 CoRequisite AddressList9 AddressList10 ; NOTE: Deleting WORK.POSTALCODESCORRECTIONS (memtype=DATA). NOTE: Deleting WORK.ADDRESSLIST (memtype=DATA). NOTE: Deleting WORK.ADDRESSLIST1 (memtype=DATA). NOTE: Deleting WORK.ADDRESSLIST2 (memtype=DATA). NOTE: Deleting WORK.ADDRESSLIST3 (memtype=DATA). NOTE: Deleting WORK.ADDRESSLIST4 (memtype=DATA). NOTE: Deleting WORK.ADDRESSLIST5 (memtype=DATA). NOTE: Deleting WORK.ADDRESSLIST6 (memtype=DATA). NOTE: Deleting WORK.ADDRESSLIST7 (memtype=DATA). NOTE: Deleting WORK.ADDRESSLIST8 (memtype=DATA). NOTE: Deleting WORK.COREQUISITE (memtype=DATA). NOTE: Deleting WORK.ADDRESSLIST9 (memtype=DATA). NOTE: Deleting WORK.ADDRESSLIST10 (memtype=DATA). ERROR: A lock is not available for WORK.ADDRESSLIST10.DATA.
The locking issue normally occurs if another SAS session locks the table or - depending on your settings - if it's open in your client (like in EG).
If you're using SAS EG make sure to have setting "Unlock all open data before running code".
Because this is a WORK table it can't be another SAS session that locks the table. If the issue still exists even with the option set to unlock all data then the only other reason I can think of is some virus scanner or backup process that gets in the way.
Let us know if the unlock option helps or not and we continue from there.
I certainly would reduce the time for:
Is there any option in EG7.1 to automatically open (or not open) tables created by a run? If so make sure you don't automatically open such tables.
No more sure how this looks in EG7.1 but here from EG8: Make sure to not set the default to Table.
The usual question for "it used to work but doesn't anymore" issues is: What changed?
If it's not some EG setting then the most likely culprit in my experience is a virus scanner that doesn't exclude *.sas7b* files. I suggest you contact your SAS Admin and raise this issue. If it's a virus scanner then other people/processes should also have such intermittent problems.
I'd suggest talking to your SAS administrator. Are you the only user impacted by this problem or are other users as well? The fact that it is an intermittent problem and it is a different dataset each time could point to SAS server IO problems. Your administrator should be able to investigate this.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.