powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Еще пара вопросов по GlobalsDB
24 сообщений из 24, страница 1 из 1
Еще пара вопросов по GlobalsDB
    #38760761
TryCache
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Еще пара вопросов:
1. Можно ли в GlobalsDb отключить журналирование?
2. Если я удалил данные из БД, можно ли как-то уменьшить размер файла БД и журнала?

P.S. Если есть какой-то документация по GlobalsDb (не API), чтобы я не задавал эти вопросы здесь?
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38761603
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TryCacheМожно ли в GlobalsDb отключить журналирование?Официально - нет As far as journaling is concerned, journaling is always on by default for the Globals Database., но неофициально - можно , например:
Код: java
1.
2.
3.
4.
5.
import com.intersys.globals.*;

Connection db = ConnectionContext.getConnection();
db.callProcedure("DISABLE", "%SYS.NOJRN");
db.callProcedure("ENABLE", "%SYS.NOJRN");

TryCacheЕсли я удалил данные из БД, можно ли как-то уменьшить размер файла БД и журнала?Средствами GlobalsDB - нет.
TryCacheЕсли есть какой-то документация по GlobalsDb (не API)?Пока только Caché . См о́ трите, что есть в Caché и проверяете есть ли это в GlobalsDB, для которого в этом плане подходит новый слоган браузера Opera - "Создан для открытий".
TryCacheчтобы я не задавал эти вопросы здесь Там Вы можете задать не только свои вопросы, связанные с GlobalsDB, но и внести предложения по расширению его функционала .
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762164
TryCache
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
servit
Код: java
1.
2.
3.
4.
5.
import com.intersys.globals.*;

Connection db = ConnectionContext.getConnection();
db.callProcedure("DISABLE", "%SYS.NOJRN");
db.callProcedure("ENABLE", "%SYS.NOJRN");


servit, а в какой момент это нужно делать? Просто на уже имеющейся базе в несколько гигов это по всей видимости это приводит к гибели СУБД - все висит, данные не пишутся в БД, даже перезапустить службу нельзя. Я думал она там журнал накатывает, но видимых обращений к диску нет. Нужно выполнять только последнюю команду или обе? Нужно ли перезапускать службу СУБД?
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762168
TryCache
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
servit, кстати, я использую библиотеки от Cache (а не те, которые в папке globals), все работало до момента отключения журнала.
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762248
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати, я использую библиотеки от Cache (а не те, которые в папке globals)
Можете сказать почему ? Какой выигрыш из этого ?
И какие именно. Тоже интересно, а то у них можно запустить только 4 job-a ...
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762257
TryCache
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valeriu, просто для удобства разработки (в maven сначала использовал обе версии, потом запустил Globals со сборкой от Cache, а оно, оказывается, работает). Мне нужно создать приложение, работающее с двумя СУБД. Деплоить - это уже другой вопрос, а сейчас мне так проще.
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762297
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TryCacheservit, а в какой момент это нужно делать? Нужно выполнять только последнюю команду или обе? http://docs.intersystems.com/cache_latest/csp/docbook/DocBook.UI.Page.cls?KEY=GCDI_journal#GCDI_journal_util_NOJRN]Manage Journaling at the Process Level Using %NOJRN
TryCacheНужно ли перезапускать службу СУБД?Нет.
TryCacheвсе висит, данные не пишутся в БД, даже перезапустить службу нельзяПокажите Ваш globalsdb.log
TryCacheМне нужно создать приложение, работающее с двумя СУБД 12665535
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762335
TryCache
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
servit,

globalsdb.log
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
*** Recovery started at Tue Sep 30 16:09:39 2014
     Current default directory: e:\globals\mgr
     Log file directory: e:\globals\mgr\
     WIJ file spec: e:\globals\mgr\CACHE.WIJ
Recovering local (e:\globals\mgr\CACHE.WIJ) image journal file...
Starting WIJ recovery for 'e:\globals\mgr\CACHE.WIJ'.
  0 blocks pending in this WIJ.
Exiting with status 3 (Success)



*** Recovery started at Tue Sep 30 16:09:56 2014
     Current default directory: e:\globals\mgr
     Log file directory: e:\globals\mgr\
     WIJ file spec: e:\globals\mgr\CACHE.WIJ
Recovering local (e:\globals\mgr\CACHE.WIJ) image journal file...
Starting WIJ recovery for 'e:\globals\mgr\CACHE.WIJ'.
  0 blocks pending in this WIJ.
Exiting with status 3 (Success)
09/30/14-16:09:56:975 (0) 0 Automatically configuring buffers
09/30/14-16:09:56:997 (0) 0 Allocated 316MB shared memory (large pages): 256MB global buffers, 1MB routine buffers
09/30/14-16:09:56:997 (0) 0 Intel AES-NI not supported
09/30/14-16:09:57:024 (0) 0 Jrn info from prior WIJ (imflags: 0):
	wdpass: 0
	jrnwdpass: 42
	fspec: e:\globals\mgr\journal\transaction-journal.008
	filecnt: 9
	fileoff: 0
	prevfcnt: 9
	prevfileoeff: 0
	min trans cnt: 9
	min trans index: 69972640
09/30/14-16:09:57:028 (6632) 0 
startGlobals of Globals for Windows (x86-64) 2013.2 (Build 350U) Thu May 2 2013 20:02:30 EDT.
	in e:\globals\mgr
	with wij: e:\globals\mgr\CACHE.WIJ
	from: e:\globals\mgr\
  OS=[NT], version=[6.1.7601], 8 processors.
  Processor type=[8664], level=[6], revision=[7685], active processor
09/30/14-16:09:57:028 (6632) 0 mask=[ff].
  System Initialized.
09/30/14-16:09:57:044 (6200) 0 Write daemon started.
09/30/14-16:09:58:154 (1232) 0 Initializing Globals
09/30/14-16:09:58:162 (1232) 0 Globals in e:\globals\mgr\ starting on node home by user ñèñòåìà
09/30/14-16:09:58:176 (1232) 0 Enabling long strings
09/30/14-16:09:58:213 (6672) 0 Clean Daemon Started
09/30/14-16:09:58:225 (1232) 0 GLOBALSDB JOURNALING SYSTEM MESSAGE
Journaling started to: e:\globals\mgr\journal\transaction-journal.000
09/30/14-16:09:58:225 (1232) 0 Enabling logons
09/30/14-16:11:45:659 (3896) 0 Shutting down Cache
09/30/14-16:11:45:659 (3896) 0 Stopping User Jobs
09/30/14-16:11:45:659 (3896) 0 Waiting for users to stop
09/30/14-16:11:45:660 (3896) 0 Removing database locks
09/30/14-16:11:45:661 (3896) 0 Updating Journal File
09/30/14-16:11:45:871 (3896) 0 Journal restore not required at next startup
09/30/14-16:11:45:871 (3896) 0 Transaction rollback not required at next startup
09/30/14-16:11:47:071 (3896) 0 Stopping System Jobs
09/30/14-16:11:47:171 (6728) 0 GARCOL exited due to system shutdown
09/30/14-16:11:47:171 (6604) 0 EXPDMN exited due to system shutdown
09/30/14-16:11:47:185 (7048) 0 JRNDMN exited due to system shutdown
09/30/14-16:11:47:788 (6200) 0 No blocks pending in WIJ file
09/30/14-16:11:47:805 (6200) 0 WRTDMN exited due to system shutdown
09/30/14-16:11:47:872 (6632) 0 CONTROL exited due to system shutdown
09/30/14-16:11:48:971 (3896) 0 Shutdown complete



*** Recovery started at Tue Sep 30 16:11:49 2014
     Current default directory: e:\globals\mgr
     Log file directory: e:\globals\mgr\
     WIJ file spec: e:\globals\mgr\CACHE.WIJ
Recovering local (e:\globals\mgr\CACHE.WIJ) image journal file...
Starting WIJ recovery for 'e:\globals\mgr\CACHE.WIJ'.
  0 blocks pending in this WIJ.
Exiting with status 3 (Success)



*** Recovery started at Tue Sep 30 16:11:50 2014
     Current default directory: e:\globals\mgr
     Log file directory: e:\globals\mgr\
     WIJ file spec: e:\globals\mgr\CACHE.WIJ
Recovering local (e:\globals\mgr\CACHE.WIJ) image journal file...
Starting WIJ recovery for 'e:\globals\mgr\CACHE.WIJ'.
  0 blocks pending in this WIJ.
Exiting with status 3 (Success)
09/30/14-16:11:50:642 (0) 0 Automatically configuring buffers
09/30/14-16:11:50:661 (0) 0 Allocated 316MB shared memory (large pages): 256MB global buffers, 1MB routine buffers
09/30/14-16:11:50:662 (0) 0 Intel AES-NI not supported
09/30/14-16:11:50:668 (0) 0 Jrn info from prior WIJ (imflags: 0):
	wdpass: 0
	jrnwdpass: 7
	fspec: e:\globals\mgr\journal\transaction-journal.000
	filecnt: 1
	fileoff: 0
	prevfcnt: 1
	prevfileoeff: 0
	min trans cnt: 1
	min trans index: 131696
09/30/14-16:11:50:671 (6476) 0 
startGlobals of Globals for Windows (x86-64) 2013.2 (Build 350U) Thu May 2 2013 20:02:30 EDT.
	in e:\globals\mgr
	with wij: e:\globals\mgr\CACHE.WIJ
	from: e:\globals\mgr\
  OS=[NT], version=[6.1.7601], 8 processors.
  Processor type=[8664], level=[6], revision=[7685], active processor
09/30/14-16:11:50:672 (6476) 0 mask=[ff].
  System Initialized.
09/30/14-16:11:50:688 (4188) 0 Write daemon started.
09/30/14-16:11:51:807 (6916) 0 Initializing Globals
09/30/14-16:11:51:808 (6916) 0 Globals in e:\globals\mgr\ starting on node home by user ñèñòåìà
09/30/14-16:11:51:812 (6916) 0 Enabling long strings
09/30/14-16:11:51:823 (6916) 0 Performing Journal Recovery
09/30/14-16:11:51:832 (6916) 0 WIJ indicates no open transactions
09/30/14-16:11:51:847 (6052) 0 Clean Daemon Started
09/30/14-16:11:51:851 (6916) 0 GLOBALSDB JOURNALING SYSTEM MESSAGE
Journaling started to: e:\globals\mgr\journal\transaction-journal.000
09/30/14-16:11:51:851 (6916) 0 Enabling logons
09/30/14-16:12:09:585 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 10 MB requested.
09/30/14-16:12:09:690 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 10 MB.
09/30/14-16:12:09:790 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 10 MB requested.
09/30/14-16:12:10:032 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 10 MB.
09/30/14-16:12:10:171 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 10 MB requested.
09/30/14-16:12:10:317 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 10 MB.
09/30/14-16:12:10:397 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 10 MB requested.
09/30/14-16:12:10:573 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 10 MB.
09/30/14-16:12:10:883 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 10 MB requested.
09/30/14-16:12:10:992 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 10 MB.
09/30/14-16:12:11:108 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 10 MB requested.
09/30/14-16:12:11:340 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 10 MB.
09/30/14-16:12:11:446 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 10 MB requested.
09/30/14-16:12:11:613 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 10 MB.
09/30/14-16:12:11:703 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 10 MB requested.
09/30/14-16:12:12:623 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 10 MB.
09/30/14-16:12:12:725 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 10 MB requested.
09/30/14-16:12:13:463 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 10 MB.
09/30/14-16:12:13:525 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 11 MB requested.
09/30/14-16:12:13:844 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 11 MB.
09/30/14-16:12:13:996 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 12 MB requested.
09/30/14-16:12:14:224 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 12 MB.
09/30/14-16:12:14:291 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 14 MB requested.
09/30/14-16:12:14:970 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 14 MB.
09/30/14-16:12:15:066 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 16 MB requested.
09/30/14-16:12:15:774 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 16 MB.
09/30/14-16:12:16:117 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 18 MB requested.
09/30/14-16:12:16:633 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 18 MB.
09/30/14-16:12:17:018 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 20 MB requested.
09/30/14-16:12:18:207 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 20 MB.
09/30/14-16:12:18:456 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 22 MB requested.
09/30/14-16:12:20:472 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 22 MB.
09/30/14-16:12:20:676 (6576) 0 Starting Expansion for database e:\globals\mgr\data\. 25 MB requested.
09/30/14-16:12:21:394 (6576) 0 Expansion completed for database e:\globals\mgr\data\. Expanded by 25 MB.
09/30/14-16:17:26:701 (6476) 2 CP: Pausing users because the Write Daemon has not shown
   signs of activity for 301 seconds. Users will resume if Write Daemon completes a
   pass or writes to disk (wdpass=6).
09/30/14-16:21:51:717 (6052) 2 Process terminated abnormally (pid 5148, jobid 0x012f0006)
09/30/14-16:21:51:743 (6052) 0 cleaned dead job, pid: 5148, jobid 0x012f0006
09/30/14-16:42:44:970 (5852) 0 Shutting down Cache

Снял со свежего зависания.
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762343
TryCache
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1. И все-таки, в доке написано:
A process can enable or disable journaling for itself via the ENABLE and DISABLE line tags of ^%SYS.NOJRN, respectively.
Т.е. несмотря на очевидное двойное отрицание (NOJRN уже отрицание), я должен вызывать DISABLE %SYS.NOJRN?
2. Вызов этого метода действует на мой ПРОЦЕСС или на время вызова ConnectionContext.getConnection().connect, пока не закрыли соединение?
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762461
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TryCacheТ.е. несмотря на очевидное двойное отрицание (NOJRN уже отрицание), я должен вызывать DISABLE %SYS.NOJRN?
  • сравните:Правильно (взято из документации)A process can enable or disable journaling for itself via the ENABLE and DISABLE line tags of ^%SYS.NOJRN, respectively.иНеправильноA process can enable or disable journaling for itself via the DISABLE and ENABLE line tags of ^%SYS.NOJRN, respectively.
  • <...> you can stop journaling <...> from within an application <...> as follows:%SYS>DO DISABLE^%NOJRNJournaling remains disabled until one of the following events occurs:
      The process halts. The process issues the following call to reactivate journaling:%SYS>DO ENABLE^%NOJRN
Поэтому:
Код: java
1.
2.
3.

db.callProcedure("DISABLE", "%SYS.NOJRN"); // отключение журналирования на уровне процесса
db.callProcedure("ENABLE", "%SYS.NOJRN"); // включение журналирования на уровне процесса
TryCacheВызов этого метода действует на мой ПРОЦЕСС или на время вызова ConnectionContext.getConnection().connect, пока не закрыли соединение?На время сеанса подключения к БД в рамках Вашего процесса, не системы. Это легко проверить вызвав в "терминале" (другом процессе):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
DATA>w $$CURRENT^%SYS.NOJRN ; вывести текущее состояние журналирования данного процесса
1 ; журналирование включено, хотя в Вашем приложении оно может быть выключено
DATA>d DISABLE^%SYS.NOJRN
DATA>w $$CURRENT^%SYS.NOJRN
0 ; журналирование отключено
DATA>d ENABLE^%SYS.NOJRN
DATA>w $$CURRENT^%SYS.NOJRN
1 ; журналирование вновь включено
TryCacheдаже перезапустить службу нельзяВ globalsdb.log этого не видно, а видно, что была интенсивная заливка данных. Журналирование хотите отключить ради ускорения BULK INSERT?
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762585
TryCache
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
servitTryCacheдаже перезапустить службу нельзяВ globalsdb.log этого не видно, а видно, что была интенсивная заливка данных. Журналирование хотите отключить ради ускорения BULK INSERT?
Да, нужно вставлять много двоичных данных, причем параллельно нужно чтение этих данных. Это вообще была одна из причин, почему мы выбрали Cache. Навскидку разница в скорости как раз примерно в 2 раза (по сравнению с отключенным журналированием).
P.S. Не совсем параллельно - т.е. у меня все равно будет очередь (работаю через акторы), но суть в том что операции записи перемежаются с операциями чтения. А в принципе я записал данные, затем могу прочитать, потом опять записал и т.д. В какой-то момент данные удаляются. Но, опять же, повторюсь, Intersystems выбрали из-за возможности работать с большими объемами данных на запись _постоянно_. Понятное дело, что-то будет удаляться, но я хотел подчеркнуть, что это не разовая операция вставки и потом работа в обычном режиме, а именно работа с базой как с абстракцией над файловой системой, позволяющей эффективно работать, не рассчитывая всякие смещения в файле и т.п..
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762898
TryCache
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
servit,

выполняю
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
if (!connection.isConnected)
      connection.connect(
        connectionSettings.database, connectionSettings.user, connectionSettings.password)
connection.callProcedure("DISABLE", "%SYS.NOJRN")
connection.close()

//а далее цикл
while(some){
if (!connection.isConnected)
      connection.connect(
        connectionSettings.database, connectionSettings.user, connectionSettings.password)

//тут функция вставки

connection.close()
}


дальше делаю вставки, но размер файла transaction-journal.000 начинает быстро расти и никакого прироста скорости я не замечаю. Может быть нельзя вызывать connection.close()?
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762910
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в итоге
ты подключаешься, отключаешь журналирование для текущего процесса
затем зачем то сразу отключаешься

и потом опять подключаешься, и разумеется отключение журналирования уже не будет. потому как это было в другом подключении.
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762945
TryCache
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DAiMor, т.е. в таком случае, если я использую конструкцию типа using(resource) с автозакрытием соединения, то мне нужно каждый раз заново вызывать отключение журнала после установления соединения? А есть ли какие-то накладные расходы на эту операцию, или они совсем незначительны?

И вот еще что странно: получается мне нельзя завершать отладку программы аварийно, когда идет работа с GlobalsDb. Дело в том, что я завершил в отладчике отладку аварийно, а при следующем подключении - ничего, даже перезапустить GlobalsDb нельзя.
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38762985
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, при каждом переподключении это будет всегда новый процесс. соответственно его всегда нужно инициализировать по новому, и отключение журналирования ввашем случае относится к этому.

Насчет завершения аварийно, вообще-то проблем не должно быть особо, почему не удается подключение, нужно внимательно изучать логи, смотреть текущее состояние системы, там же есть ограничения на подключения, может серверный процесс не завершается и продолжает работать, и он не дает подключится.
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38764416
TryCache
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DAiMorНасчет завершения аварийно, вообще-то проблем не должно быть особо, почему не удается подключение, нужно внимательно изучать логи, смотреть текущее состояние системы, там же есть ограничения на подключения, может серверный процесс не завершается и продолжает работать, и он не дает подключится.
А Вы можете насчет серверного процесса написать подробнее?
Я точно установил причину этого зависания. С журналированием решил пока ничего не делать, все настройки по умолчанию. В течении порядка минуты я пишу в чистую БД около 1 Гб данных (файл CACHE.DAT порядка 1 Гб и два журнала один 512 Мб, другой чуть меньше), затем в IntelliJ IDEA по кнопке "Stop debug" я снимаю задачу. Все, теперь появляются две проблемы:
1. я не могу подсоединиться к БД из своей программы.
2. я не могу остановить (из оснастки "Службы") службу GlobalsDb в принципе.

Может быть проблема в такой нагрузке? За час я записал в Cache (с отключенным журналированием) порядка 120 Гб данных, хотел сейчас проверить как это работает в GlobalsDb, но через какое-то время скорость стала проседать и я завершил отладку в отладчике. После этого ни подсоединиться к GlobalsDb, ни остановить службу я не могу. После перезагрузки я его запускаю и все вроде нормально, если не считать диких тормозов диска (процесс cache начинает что-то читать с диска очень интенсивно).

Собственно, я так понимаю на одну GlobalsDb - один процесс, это так?
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38764438
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TryCache,
Я говорил, что GlobalsDb предоставляет ВСЕГО 4 job (процессов) по сравнению с полноценной системой.
Если они исчерпаны(использованы) то такая картина вполне может быть и у вас...
Смотрите сколько job-ов хавает ваша система в этих случаях.
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38764450
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TryCacheСобственно, я так понимаю на одну GlobalsDb - один процесс, это так?Вот тут совсем не понял, что значит на одну GlobalsDB один процесс, одно подключение=один процесс (может и больше)

а вы можете тоже самое воспроизвести на Cache ? там больше инструментов, можно больше понять что происходит.

можно посмотреть в списке процессов, те что что имеют отношение к globalsdb, посмотреть их список
можно попробовать грохнуть процесс который был создан для подключения из IDEA.
в проекте нужно предусмотреть аварийное завершение работы с закрытием подключений.

после рестарта, чтение, скорее всего связано с тем что было аварийное завершение работы, и сервер сканирует журнал на наличие незавершенных транзакций, для их отката

подключение еще может не удаваться из-за того что система уходит во freeze из-за слишком большого потока записи данных (в Cache это легче мониторить с помощью mgstat)

и остановка, незнаю как насчет globalsdb, но cache можно принудительно остановить командой
ccontrol force instanceName
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38765592
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TryCacheМне нужно создать приложение, работающее с двумя СУБД.1. По логу видно, что у Вас файл БД стремительно растёт, на что тратится доп. время. Поэтому, лучше предварительно сразу расширить cache.dat до нужного размера. Это можно сделать в консоли в режиме разработчика ( globals.exe console ):
Код: plaintext
^^c:\globals\mgr\>d ModifyDatabase^%SYS.DATABASE($zu(12,"data"),,120) ;задаёт размер файла c:\globals\mgr\data\cache.dat в 120 Мб
2. Для процессов с интенсивной обработкой рекомендуется включать пакетный режим работы ( Торможение при индексировании )
Код: plaintext
1.
2.
3.
^^c:\globals\mgr\>w $system.Util.SetBatch(1) // включить пакетный режим
0 ; было до этого
^^c:\globals\mgr\>w $system.Util.SetBatch(0) // выключить пакетный режим
1 ; было до этого
3. Не лишними для ускорения могут оказаться и The $SORTBEGIN and $SORTEND Functions . Но ... 4. Возможности использовать их на стороне клиента нет. 5. Как показала практика, программно (на стороне клиента) вызвать методы/процедуры - изменить параметры пакетного режима, журналирования и т.д - вряд ли получится:
  • вызов функций не реализован: callFunction выдаёт ошибку <UNIMPLEMENTED>
  • вызов процедур, судя по всему, просто ничего не делает:  db.callProcedure("ModifyDatabase1", "%SYS.DATABASE1","","",120); // отрабатывает без ошибок
^CacheTempUser.XXX для исключения их из журналирования, но БД CACHETEMP в GlobalsDB как известно нет, поэтому тоже не вариант.
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38765617
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValeriuЯ говорил, что GlobalsDb предоставляет ВСЕГО 4 job (процессов) по сравнению с полноценной системой.Можно ссылку?TryCacheСобственно, я так понимаю на одну GlobalsDb - один процесс, это так?Нет, не так, и это очень легко проверить.
Запустил одновременно 5 экземляров приложения (5 процессов java.exe ), соответственно 5 подключений - и всё работает. При этом количество процессов cache.exe не изменилось .
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38765722
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit,
Я с этим столкнулся раньше. С клиента, больше 2-х соединений никак, job-ов не хватает..
http://www.sql.ru/forum/1024187/globals-na-ubuntu-11-04?hl=
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38765816
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValeriuЯ говорил, что GlobalsDb предоставляет ВСЕГО 4 job (процессов) по сравнению с полноценной системой.


А все таки заработала связка сокет клиент (Win или Linux)
и база Globals на Linux(только!) через демон xinetd и
M/Wire Роба Твида...


Кроме двух соединений, больше нельзя делать ...
Я просил ссылку про "ВСЕГО 4 job (процессов)", а не "больше 2-х соединений никак, job-ов не хватает..".

Так 4, 2 или 8 ( 10500406 )? Всё смешалось: кони, люди, процессы, соединения ...

Всё зависит от того чем (как) подключаться.
Например, 3 консоли ( globals.exe console ) запускаются без проблем. При этом стартуют 3 новых процесса cache.exe .
Четвёртый же запуск завершается ошибкой со следующим сообщением:

Код: plaintext
Please use the published API for accessing the Globals database

Если же использовать этот самый "published API", который не предусматривает сокетов и команд $job, то, как показано выше, ограничений на количество подключений нет.
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38765961
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit,
Если же использовать этот самый "published API", который не предусматривает сокетов и команд $job, то, как показано выше, ограничений на количество подключений нет.
Именно этим и хотелось поработать($job). Сокетов можно и не использовать.
Вот именно и за этого.
Тогда как определить пользователей, которых соединились к базе, если нету $job ?
...
Рейтинг: 0 / 0
Еще пара вопросов по GlobalsDB
    #38765990
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValeriuТогда как определить пользователей, которых соединились к базе, если нету $job ?Если помнить это ( 12665535 ), то подобные вопросы должны разрешиться сами собой.
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Еще пара вопросов по GlobalsDB
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]