Today I tried to backup two ADABAS-files of our Database (213-214) while many users are working. It is impossible that anybody works on that files during daytime. I thought, this backup can’t cause problems.
So I typed the following on the Linux command-line:
adabck db=11 dump='(213-214)'
But then, the Database was waiting for a so-called “ET_SYNC”. The utility adaopr said, that an “ET_SYNC (phase 1)” is in progress. I displayed the hold queue. There was only one entry: A single record of file 181. The adabck was waiting and waiting …
Meanwhile many users tried to make updates/stores (but not on file 213-214). The regarding dialogs were waiting to.
So I stopped the user that held the one record on file 181. After that, the utility adaopr told me someting about “ET_SYNC (phase 2)” and a full command queue. The hold-queue had 30 entries. But adabck and the users were still waiting. Now it was impossible to do anything. Even a shutdown of the database didn’t work (because of the full command queue?). So I killed the adabck with linux. Nothing happens. Now it was impossible to do a reset on the ucb anyway.
The only solution was to restart the whole computer.
- It’s sure that only the adabck accessed the files 213-214 today. Why does an adabck wait for ET_SYNC? That seems completely needless to me.
- Adabas obviously blocks updates on files 10-200 during a backup of file 213-214. Why?
- Is it possible to stop a transaction that causes the ET_SYNC?
- What is the difference between phase 1 and phase 2 of ET_SYNC?
- What to do better next time?
By the way: Parameter TT of the Database is set to 7200.
Many thanks in advance,