Lock Error on X# 27
Posted: Wed Mar 03, 2021 7:38 am
Hi
I have a problem with the new X#27 .
This is the Error MSG
Beschreibung : Der Prozess kann nicht auf die Datei zugreifen, da ein anderer Prozess einen Teil der Datei gesperrt hat.
Subsystem : DBFCDX
Generischer Code : EG_LOCK_ERROR Lock-Fehler
Untercode : 1130 Unknown SubCode
Betriebssystemcode : 33 Der Prozess kann nicht auf die Datei zugreifen, da ein anderer Prozess einen Teil der Datei gesperrt hat
FuncSym : INIT
Schwere : ES_ERROR
Kann Default : False
Kann erneut versuchen : False
Kann ersetzen : False
Datei : C:XIDEProjectsSwissbaseBinDebuglogindbfUser.dbf
Aufrufreihenfolge :
bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
bei System.IO.__Error.WinIOError()
bei System.IO.FileStream.Lock(Int64 position, Int64 length)
bei XSharp.IO.XsFileStream.Lock(Int64 position, Int64 length)
bei XSharp.IO.XsFileStream.Lock(Int64 position, Int64 length)
bei XSharp.FileStreamExensions.SafeLock(FileStream oStream, Int64 offset, Int64 length)
bei XSharp.RDD.FPTMemo._tryLock(Int64 nOffset, Int32 nLong, Int32 nTries)
bei XSharp.RDD.FPTMemo.LockHeader(Boolean refreshHeaders)
bei XSharp.RDD.FPTMemo.OpenMemFile(DbOpenInfo info)
bei XSharp.RDD.DBF.OpenMemFile(DbOpenInfo info)
bei XSharp.RDD.DBF.Open(DbOpenInfo info)
bei XSharp.RDD.DBFCDX.Open(DbOpenInfo info)
bei XSharp.CoreDb.<>c__DisplayClass114_0.b__0()
bei XSharp.CoreDb.Do[T](Func`1 action)
bei XSharp.CoreDb.UseArea(Boolean lNew, Type rddType, String cName, String cAlias, Boolean lShare, Boolean lReadOnly)
bei XSharp.CoreDb.<>c__DisplayClass112_0.b__0()
bei XSharp.CoreDb.Do[T](Func`1 action)
bei XSharp.CoreDb.UseArea(Boolean lNew, _RddList rddList, String cName, String cAlias, Boolean lShare, Boolean lReadOnly)
bei XSharp.RT.Functions.VoDbUseArea(Boolean lNewArea, _RddList rddlist, String cDataFile, String cAlias, Boolean lShared, Boolean lReadOnly)
bei VO.DbServer..ctor(__Usual[] Xs$Args)
bei _CryptServer..ctor(__Usual[] Xs$Args) in C:XIDEProjectsSwissbaseApplications_Swissbase-FunctionenDatenbank.prg:Zeile 365.
bei CgiContext..ctor(String cRoot, HttpListenerRequest oRequest, String cPostGetStream) in C:XIDEProjectsSwissbaseApplications_Swissbase-FunctionenKlassenCgiContext.prg:Zeile 210.
bei ElektroKontrollContext..ctor(String cRoot, HttpListenerRequest oRequest, String cPostGetStream) in C:XIDEProjectsSwissbaseApplications_KontrollKlasse.prg:Zeile 16.
bei ElektroKontrollDruckContext..ctor(String cRoot, HttpListenerRequest oRequest, String cPostGetStream) in C:XIDEProjectsSwissbaseApplicationsElektro Kontroll DruckMenue__Start.prg:Zeile 52.
bei Elektro Kontroll DruckMenue.Functions.StartElektroKontrollDruck(HttpListenerRequest oRequest, String cPostGetStream) in C:XIDEProjectsSwissbaseApplicationsElektro Kontroll DruckMenue__Start.prg:Zeile 28.
bei Service.HttpServer.Response(HttpListenerContext ocontext) in C:XIDEProjectsSwissbaseApplicationsWebServerPrgHttpServer.prg:Zeile 305.
bei Service.HttpServer.Processor(Int32 number, BlockingCollection`1 messages) in C:XIDEProjectsSwissbaseApplicationsWebServerPrgHttpServer.prg:Zeile 94.
bei Service.HttpServer.<>c__DisplayClass11_0.b__0() in C:XIDEProjectsSwissbaseApplicationsWebServerPrgHttpServer.prg:Zeile 80.
bei System.Threading.ThreadHelper.ThreadStart_Context(Object state)
bei System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
bei System.Threading.ThreadHelper.ThreadStart()
I am was checking my prg and the whole project. I just open User.dbf , reading and then i close the dbf.
DbServer {WorkDir ()+ SELF:cPathDbfSys + "User.dbf" , TRUE,FALSE,"DBFCDX"}
But ! I call this thread at the same time many times, depending how many documents has to be created.
I was goining back to X#2.6 and i had no problems, installing 2.7 again and the problems/errors comes back.
So i am quit sure it has something to do with the new version. Any hint ?
Horst
I have a problem with the new X#27 .
This is the Error MSG
Beschreibung : Der Prozess kann nicht auf die Datei zugreifen, da ein anderer Prozess einen Teil der Datei gesperrt hat.
Subsystem : DBFCDX
Generischer Code : EG_LOCK_ERROR Lock-Fehler
Untercode : 1130 Unknown SubCode
Betriebssystemcode : 33 Der Prozess kann nicht auf die Datei zugreifen, da ein anderer Prozess einen Teil der Datei gesperrt hat
FuncSym : INIT
Schwere : ES_ERROR
Kann Default : False
Kann erneut versuchen : False
Kann ersetzen : False
Datei : C:XIDEProjectsSwissbaseBinDebuglogindbfUser.dbf
Aufrufreihenfolge :
bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
bei System.IO.__Error.WinIOError()
bei System.IO.FileStream.Lock(Int64 position, Int64 length)
bei XSharp.IO.XsFileStream.Lock(Int64 position, Int64 length)
bei XSharp.IO.XsFileStream.Lock(Int64 position, Int64 length)
bei XSharp.FileStreamExensions.SafeLock(FileStream oStream, Int64 offset, Int64 length)
bei XSharp.RDD.FPTMemo._tryLock(Int64 nOffset, Int32 nLong, Int32 nTries)
bei XSharp.RDD.FPTMemo.LockHeader(Boolean refreshHeaders)
bei XSharp.RDD.FPTMemo.OpenMemFile(DbOpenInfo info)
bei XSharp.RDD.DBF.OpenMemFile(DbOpenInfo info)
bei XSharp.RDD.DBF.Open(DbOpenInfo info)
bei XSharp.RDD.DBFCDX.Open(DbOpenInfo info)
bei XSharp.CoreDb.<>c__DisplayClass114_0.b__0()
bei XSharp.CoreDb.Do[T](Func`1 action)
bei XSharp.CoreDb.UseArea(Boolean lNew, Type rddType, String cName, String cAlias, Boolean lShare, Boolean lReadOnly)
bei XSharp.CoreDb.<>c__DisplayClass112_0.b__0()
bei XSharp.CoreDb.Do[T](Func`1 action)
bei XSharp.CoreDb.UseArea(Boolean lNew, _RddList rddList, String cName, String cAlias, Boolean lShare, Boolean lReadOnly)
bei XSharp.RT.Functions.VoDbUseArea(Boolean lNewArea, _RddList rddlist, String cDataFile, String cAlias, Boolean lShared, Boolean lReadOnly)
bei VO.DbServer..ctor(__Usual[] Xs$Args)
bei _CryptServer..ctor(__Usual[] Xs$Args) in C:XIDEProjectsSwissbaseApplications_Swissbase-FunctionenDatenbank.prg:Zeile 365.
bei CgiContext..ctor(String cRoot, HttpListenerRequest oRequest, String cPostGetStream) in C:XIDEProjectsSwissbaseApplications_Swissbase-FunctionenKlassenCgiContext.prg:Zeile 210.
bei ElektroKontrollContext..ctor(String cRoot, HttpListenerRequest oRequest, String cPostGetStream) in C:XIDEProjectsSwissbaseApplications_KontrollKlasse.prg:Zeile 16.
bei ElektroKontrollDruckContext..ctor(String cRoot, HttpListenerRequest oRequest, String cPostGetStream) in C:XIDEProjectsSwissbaseApplicationsElektro Kontroll DruckMenue__Start.prg:Zeile 52.
bei Elektro Kontroll DruckMenue.Functions.StartElektroKontrollDruck(HttpListenerRequest oRequest, String cPostGetStream) in C:XIDEProjectsSwissbaseApplicationsElektro Kontroll DruckMenue__Start.prg:Zeile 28.
bei Service.HttpServer.Response(HttpListenerContext ocontext) in C:XIDEProjectsSwissbaseApplicationsWebServerPrgHttpServer.prg:Zeile 305.
bei Service.HttpServer.Processor(Int32 number, BlockingCollection`1 messages) in C:XIDEProjectsSwissbaseApplicationsWebServerPrgHttpServer.prg:Zeile 94.
bei Service.HttpServer.<>c__DisplayClass11_0.b__0() in C:XIDEProjectsSwissbaseApplicationsWebServerPrgHttpServer.prg:Zeile 80.
bei System.Threading.ThreadHelper.ThreadStart_Context(Object state)
bei System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
bei System.Threading.ThreadHelper.ThreadStart()
I am was checking my prg and the whole project. I just open User.dbf , reading and then i close the dbf.
DbServer {WorkDir ()+ SELF:cPathDbfSys + "User.dbf" , TRUE,FALSE,"DBFCDX"}
But ! I call this thread at the same time many times, depending how many documents has to be created.
I was goining back to X#2.6 and i had no problems, installing 2.7 again and the problems/errors comes back.
So i am quit sure it has something to do with the new version. Any hint ?
Horst