как правильно Ls создавать реплику?

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
Собственно если мы создаём реплику руками на локальную машину то потом по Ctrl+O спокойно её видим и она полностью синициализирована

Если же создаём скриптом
Call db.CreateReplica("", db.FilePath)
Call db.Replicate("")
Delete db
то её можно только через Browse найти, не говоря уже про то, что в 50% случаях (особенно 8.5 эклипсовым клиентом) её тем же скриптом уже не удаётся подписать (db.sign) - валит ошибки на раз...

как же правильно создавать скриптом?
 

rinsk

Lotus Team
12.11.2009
1 156
126
BIT
45
Собственно если мы создаём реплику руками на локальную машину то потом по Ctrl+O спокойно её видим и она полностью синициализирована
Если же создаём скриптом
то её можно только через Browse найти, не говоря уже про то, что в 50% случаях (особенно 8.5 эклипсовым клиентом) её тем же скриптом уже не удаётся подписать (db.sign) - валит ошибки на раз...
как же правильно создавать скриптом?

Какие ошибки при db.sign ?
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
Какие ошибки при db.sign ?
любые, раз на раз не приходится, может и не быть вообще
как буд-то пока создаётся реплика локально иногда она не дотягивается до конца а иногда всё нормально
вот пример ошибки
Err=4000 Error=Ошибка Notes: Bitmap checksum is incorrect

И это только по 8.5 клиенту если в 6.5 подписывать то видно что он порой молча запускает чек базы
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
вот думаю может на клиенте есть параметр типа NSF_BUFFER_POOL_SIZE и если его отключить он не будет кешить и тем самым реплики будут создаваться более коректные?
 

rinsk

Lotus Team
12.11.2009
1 156
126
BIT
45
любые, раз на раз не приходится, может и не быть вообще
как буд-то пока создаётся реплика локально иногда она не дотягивается до конца а иногда всё нормально
вот пример ошибки
Err=4000 Error=Ошибка Notes: Bitmap checksum is incorrect

И это только по 8.5 клиенту если в 6.5 подписывать то видно что он порой молча запускает чек базы

Может поможет:

Код:
Type DBREPLICAINFO
ID As TIMEDATE 'ID that is same for all replica files
Flags As Integer 'Replication flags
CutoffInterval As Integer 'Automatic Replication Cutoff
Cutoff As Double 'Replication cutoff date
End Type


Function MakeReplica(db As notesdatabase,srv As String,filepath As String)
Dim dbhandle As Long
Dim retNoteID As Long
Dim noteClass As Long
Dim replInfo As DBREPLICAINFO
Dim replID1 As Long 
Dim replID2 As Long
Dim rc As Integer
Call db.CreateCopy(srv,FilePath)
rc = W32_NSFDBOPEN(db.FilePath, dbhandle)
rc = W32_NSFDBREPLICAINFOGET(dbhandle, replInfo)
rc = W32_NSFDBCLOSE(dbhandle)
'replID1 = replInfo.ID.Innards(0) 
'replID2 = replInfo.ID.Innards(1)
rc = W32_NSFDBOPEN(filepath, dbhandle)
'replInfo.ID.Innards(0) = replID1 
'replInfo.ID.Innards(1) = replID2
'replInfo.Cutoff=0
rc = W32_NSFDBREPLICAINFOSET(dbhandle, replInfo)
rc = W32_NSFDBCLOSE(dbhandle)
End Function
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!