powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
25 сообщений из 78, страница 2 из 4
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494521
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

я думал ты мой пример на паскале посмотришь...
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494523
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladОшибка сразу после тела switchТочнее, в тут
Код: sql
1.
 out.println(String.format("%18d",gdso.iscVaxInteger(dbstat, i, 2)));

где ты эту 2-ку нашёл и для чего ты перед этим len вычислял ?
Копипастер :)
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494529
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,

впрочем, мой пример тоже крив, поскольку я точно знаю длину значений для конкретных параметров, и не использую длину параметра. И еще, по уму, якобы нужно учитывать с какой архитектуры процессора идут integer (если integer).
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494531
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvИ еще, по уму, якобы нужно учитывать с какой архитектуры процессора идут integer (если integer).Не нужно, для этого есть isc_vax_integer
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494535
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvlad,

я ее имел в виду, в коде Таблоида проглядел.
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494536
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladдля этого есть isc_vax_integer
Который obsolete и заменён на isc_portable_integer().
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494548
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladhvladОшибка сразу после тела switchТочнее, в тут
Код: sql
1.
 out.println(String.format("%18d",gdso.iscVaxInteger(dbstat, i, 2)));


где ты эту 2-ку нашёл и для чего ты перед этим len вычислял ?
Копипастер :)блин, точно! копипаст с верхнего вызова :(
Влад, спасибо в очередной раз!
Версия 1.0.1, исправленная:
Код: java
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.
// compile: javac -cp .;jaybird-full-2.2.4.jar FbGatherStatistics.java
// run:     java -cp .;jaybird-full-2.2.4.jar FbGatherStatistics 1>FbGatherStatistics.log 2>FbGatherStatistics.err
import static java.lang.System.*;
import java.text.*;
import org.firebirdsql.gds.*;
public final class FbGatherStatistics
{
  private static DateFormat df = new SimpleDateFormat("HH:mm:ss.SSS");
  //private static final String DB_URL="192.168.0.201/3252:empty25";
  private static final String DB_URL="192.168.0.220/3330:idx_test";
  private static final String DB_USER="sysdba";
  private static final String DB_PSWD="masterke";
  static public void main (String args[]) throws Exception
  {
    try {

      org.firebirdsql.gds.GDS gdso = org.firebirdsql.gds.GDSObjectFactory.createJavaGDSImpl();
      // Factory method to create a new IscDbHandle instance specific to the implementation of this interface.
      IscDbHandle dh =  gdso.createIscDbHandle();

      DatabaseParameterBuffer dpb = gdso.createDatabaseParameterBuffer();
      dpb.addArgument(DatabaseParameterBuffer.USER, DB_USER);
      dpb.addArgument(DatabaseParameterBuffer.PASSWORD, DB_PSWD);
      dpb.addArgument(DatabaseParameterBuffer.CONNECT_TIMEOUT, 2000);
      //out.println("dpb="+dpb); org.firebirdsql.gds.impl.wire.DatabaseParameterBufferImp@a956ac07

      out.println( df.format( System.currentTimeMillis() )+ " trying to attach. . .");
      gdso.iscAttachDatabase(DB_URL, dh, dpb);
      out.println( df.format( System.currentTimeMillis() )+" attached to "+DB_URL);

      byte[] dbstat;
      byte[] items = {  ISCConstants.isc_info_reads,
                        ISCConstants.isc_info_writes,
                        ISCConstants.isc_info_fetches,
                        ISCConstants.isc_info_marks,
                        ISCConstants.isc_info_end,
                    };
      
      while(true) {
        try {  
            out.println(df.format( System.currentTimeMillis() )+" trying to gather db statistics. . .");
            dbstat=gdso.iscDatabaseInfo(dh, items, 128);
            out.println(df.format( System.currentTimeMillis() )+" statistics gathered, dbstat[] length="+dbstat.length);
            //out.println(dbstat.length);
            int i=0;
            boolean f;
            while( dbstat[i]!=ISCConstants.isc_info_end) { 
                // API guide: A one-byte item return type. 
                // There are compile-time constants defined for all the item return
                // types in ibase.h (inf_pub.h ?)
                byte item=dbstat[i++];
                // API guide:  A two-byte number specifying the number of bytes that 
                // follow in the remainder of the cluster.          
                int len = gdso.iscVaxInteger(dbstat, i, 2);
                i+=2;
                f=false;
                switch (item){
                  case ISCConstants.isc_info_reads: 
                      out.print("\t\treads  :");
                      f=true;
                      break;
                  case ISCConstants.isc_info_writes:
                      out.print("\t\twrites :");
                      f=true;
                      break;

                  case ISCConstants.isc_info_fetches: 
                      out.print("\t\tfetches:");
                      f=true;
                      break;
                  case ISCConstants.isc_info_marks:
                      out.print("\t\tmarks  :");
                      f=true;
                      break;
                  default:
                      break;
                }
                if (f)
                  out.println(String.format("%18d",gdso.iscVaxInteger(dbstat, i, len )));
                i+=len;
            }
            Thread.sleep(5000);
        } catch (GDSException e)   {
            break;
        }
      }

      out.println (df.format( System.currentTimeMillis() )+" detaching from database. . .");
      gdso.iscDetachDatabase(dh);
      out.println (df.format( System.currentTimeMillis() )+" detached.");
    }
    catch (GDSException e) {
        out.println(df.format( System.currentTimeMillis() )+" EXCEPTION: SQLSTATE="+e.getSQLState()+", fb_error="+e.getFbErrorCode()+", msg="+e.getMessage());
    }
  }
}
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494549
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovhvladдля этого есть isc_vax_integer
Который obsolete и заменён на isc_portable_integer().Насчёт obsolete я бы поспорил:

Ищем раз:
Код: sql
1.
2.
3.
Find all "isc_portable_integer", Match case, Whole word, Subfolders, Find Results 1, "Entire Solution", "*.c;*.cpp;*.cxx;*.cc;*.tli;*.tlh;*.h;*.hpp;*.hxx;*.hh;*.inl;*.rc;*.resx;*.idl;*.asm;*.inc;*.sql;*.epp"
...
Matching lines: 38    Matching files: 35    Total files searched: 1820



Ищем два:
Код: sql
1.
2.
3.
Find all "isc_vax_integer", Match case, Whole word, Subfolders, Find Results 2, "Entire Solution", "*.c;*.cpp;*.cxx;*.cc;*.tli;*.tlh;*.h;*.hpp;*.hxx;*.hh;*.inl;*.rc;*.resx;*.idl;*.asm;*.inc;*.sql;*.epp"
...
Matching lines: 149    Matching files: 43    Total files searched: 1820


Но пользоваться, конечно, лучше isc_portable_integer, ибо только он может работать с 8-ми байтными числами
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494551
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladНо пользоваться, конечно, лучше isc_portable_integer, ибо только он может
работать с 8-ми байтными числами
Которыми эти счётчики, по идее, и должны бы являться. Во избежание переполнения.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494553
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvя думал ты мой пример на паскале посмотришь...зачем ? я в нём всё равно ничего не пойму %-)
Да и многословный он, паскаль этот: begin ... end - что, нельзя было "{" и "}", как в си ?
ЗЫ. "круче" него только html: чтобы затолкать фразу в комментарий, надо вбить семь символов, причем три из них - с нажатым Shift'ом: <!-- тратата -->

Это ж каким ботаником надо было быть, чтобы придумать такое....
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494554
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovКоторыми эти счётчики, по идее, и должны бы являться. Во избежание переполнения.ога...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
19:14:38.021 trying to attach. . .
19:14:38.193 attached to 192.168.0.220/3330:idx_test
19:14:38.193 trying to gather db statistics. . .
19:14:38.193 statistics gathered, dbstat[] length=33
		reads  :               171
		writes :           2288335
		fetches:       -1927992252
		marks  :          65169859
19:14:43.193 trying to gather db statistics. . .
19:14:43.193 statistics gathered, dbstat[] length=33
		reads  :               171
		writes :           2288580
		fetches:       -1916455014
		marks  :          65176854
19:14:48.193 trying to gather db statistics. . .
19:14:48.193 statistics gathered, dbstat[] length=33
		reads  :               171
		writes :           2289151
		fetches:       -1904960438
		marks  :          65191330
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494559
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladпользоваться, конечно, лучше isc_portable_integer, ибо только он может работать с 8-ми байтными числамия не вижу этой функции (ни в сырцах JayBird'а , ни в доке - нигде). Это так и должно быть ?
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494560
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

наверное не должно, т.к. в ibase.h она есть, рядом с vax.
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494561
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

APIGuide, p.379

Насчёт JayBird - пиши трекеру или в саппорт лист, думаю Марк быстро её добавит.
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494576
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladAPIGuide, p.379А что там относящегося к isc_portable_integer ? (см скрин в аттаче)
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494579
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladНасчёт JayBird - пиши трекеру или в саппорт лист, думаю Марк быстро её добавит.Напишу, наверное. BTW: а Роман Рокитский - он тоже ведёт разработку или уже нет ?
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494582
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

понятия не имею, в куда ты смотришь
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494584
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТаблоидРоман Рокитский - он тоже ведёт разработку или уже нет ?Он передал свои полномочия Марку.
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494608
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladпонятия не имею, в куда ты смотришья смотрю в "APIGuide, p.379" - как ты и написал выше. Что там относится к обсуждаемым тут вопросам ?
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494610
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоидя смотрю в "APIGuide,
К какой версии у тебя гайд и откуда ты его взял?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494623
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovК какой версии у тебя гайд и откуда ты его взял?как это "какой" и "откуда" ?...
ОТТУДА!
Код: plaintext
24.11.1999  06:00            3 579 077 ApiGuide.pdf
Можно подумать, что есть еще что-то...
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494680
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Версия 1.0.1.1: убрал нахрен switch (заменил поиском в hashmap'e, чтобы поуниверсальнее было), а также добавил главное: вывод РАЗНОСТЕЙ значений счетчиков:
Код: plaintext
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.
21:36:40.037 trying to attach. . .
21:36:40.209 attached to 192.168.0.220/3330:idx_test
21:36:40.209 trying to gather db statistics. . .
21:36:40.209 statistics gathered, dbstat[] length=33
21:36:40.209            reads                    0; diff:                 -1
21:36:40.209            writes                   0; diff:                 -1
21:36:40.209            fetches                  0; diff:                 -1
21:36:40.209            marks                    0; diff:                 -1

21:36:45.209 trying to gather db statistics. . .
21:36:45.209 statistics gathered, dbstat[] length=33
21:36:45.209            reads                  225; diff:                  0
21:36:45.209            writes             3197215; diff:                790
21:36:45.209            fetches          552716269; diff:           11447955
21:36:45.209            marks             92552294; diff:              25592

21:36:50.209 trying to gather db statistics. . .
21:36:50.209 statistics gathered, dbstat[] length=33
21:36:50.209            reads                  225; diff:                  0
21:36:50.209            writes             3198005; diff:                174
21:36:50.209            fetches          564164224; diff:           11572423
21:36:50.209            marks             92577886; diff:               2950

21:36:55.209 trying to gather db statistics. . .
21:36:55.209 statistics gathered, dbstat[] length=33
21:36:55.209            reads                  225; diff:                  0
21:36:55.209            writes             3198179; diff:                623
21:36:55.209            fetches          575736647; diff:           11444395
21:36:55.209            marks             92580836; diff:              25262
. . .

Дальше надо будет наворачивать плюшки: добавить реакцию на входные аргументы (имя хоста/номер_порта/путь_к_базе, время задержки между замерами etc).

.java-файлик - в аттаче.
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494689
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladпиши трекеру или в саппорт лист, думаю Марк быстро её добавит. Запулил . Будем подождать, что скажет пистолет Шона Коннери.
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494710
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблоид,

с чего ты взял, что оно имеет отношение к services api ?
...
Рейтинг: 0 / 0
JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
    #38494717
Таблоид
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladс чего ты взял, что оно имеет отношение к services api ?Ну, померещилось вот.... что-то... :-[
А к чему еще-то ? %-)
...
Рейтинг: 0 / 0
25 сообщений из 78, страница 2 из 4
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / JayBird 2.2.3: как им вызвать аналог isc_database_info() ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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