You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(24) |
Oct
(37) |
Nov
(42) |
Dec
(29) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(24) |
Feb
(24) |
Mar
(15) |
Apr
(55) |
May
(99) |
Jun
(70) |
Jul
(197) |
Aug
(329) |
Sep
(81) |
Oct
(141) |
Nov
(100) |
Dec
(157) |
2002 |
Jan
(96) |
Feb
(216) |
Mar
(78) |
Apr
(103) |
May
(29) |
Jun
(193) |
Jul
(130) |
Aug
(215) |
Sep
(262) |
Oct
(655) |
Nov
(1009) |
Dec
(655) |
2003 |
Jan
(413) |
Feb
(939) |
Mar
(527) |
Apr
(538) |
May
(439) |
Jun
(295) |
Jul
(681) |
Aug
(810) |
Sep
(835) |
Oct
(730) |
Nov
(988) |
Dec
(787) |
2004 |
Jan
(559) |
Feb
(480) |
Mar
(749) |
Apr
(565) |
May
(748) |
Jun
(529) |
Jul
(454) |
Aug
(714) |
Sep
(628) |
Oct
(857) |
Nov
(1153) |
Dec
(617) |
2005 |
Jan
(603) |
Feb
(444) |
Mar
(377) |
Apr
(579) |
May
(664) |
Jun
(407) |
Jul
(363) |
Aug
(326) |
Sep
(527) |
Oct
(522) |
Nov
(387) |
Dec
(540) |
2006 |
Jan
(355) |
Feb
(242) |
Mar
(563) |
Apr
(768) |
May
(482) |
Jun
(427) |
Jul
(440) |
Aug
(314) |
Sep
(299) |
Oct
(403) |
Nov
(333) |
Dec
(389) |
2007 |
Jan
(247) |
Feb
(335) |
Mar
(391) |
Apr
(562) |
May
(345) |
Jun
(202) |
Jul
(239) |
Aug
(288) |
Sep
(510) |
Oct
(320) |
Nov
(487) |
Dec
(387) |
2008 |
Jan
(575) |
Feb
(539) |
Mar
(762) |
Apr
(648) |
May
(625) |
Jun
(522) |
Jul
(382) |
Aug
(191) |
Sep
(426) |
Oct
(231) |
Nov
(305) |
Dec
(670) |
2009 |
Jan
(582) |
Feb
(595) |
Mar
(294) |
Apr
(461) |
May
(445) |
Jun
(597) |
Jul
(408) |
Aug
(542) |
Sep
(476) |
Oct
(437) |
Nov
(587) |
Dec
(722) |
2010 |
Jan
(456) |
Feb
(319) |
Mar
(437) |
Apr
(303) |
May
(276) |
Jun
(233) |
Jul
(155) |
Aug
(208) |
Sep
(136) |
Oct
(274) |
Nov
(241) |
Dec
(106) |
2011 |
Jan
(160) |
Feb
(244) |
Mar
(138) |
Apr
(235) |
May
(208) |
Jun
(196) |
Jul
(107) |
Aug
(77) |
Sep
(109) |
Oct
(165) |
Nov
(86) |
Dec
(211) |
2012 |
Jan
(188) |
Feb
(136) |
Mar
(273) |
Apr
(185) |
May
(149) |
Jun
(146) |
Jul
(73) |
Aug
(127) |
Sep
(103) |
Oct
(87) |
Nov
(159) |
Dec
(149) |
2013 |
Jan
(74) |
Feb
(112) |
Mar
(176) |
Apr
(139) |
May
(116) |
Jun
(160) |
Jul
(161) |
Aug
(124) |
Sep
(124) |
Oct
(82) |
Nov
(137) |
Dec
(128) |
2014 |
Jan
(116) |
Feb
(121) |
Mar
(134) |
Apr
(177) |
May
(146) |
Jun
(158) |
Jul
(154) |
Aug
(79) |
Sep
(60) |
Oct
(90) |
Nov
(184) |
Dec
(201) |
2015 |
Jan
(163) |
Feb
(263) |
Mar
(406) |
Apr
(291) |
May
(213) |
Jun
(229) |
Jul
(229) |
Aug
(111) |
Sep
(120) |
Oct
(234) |
Nov
(155) |
Dec
(153) |
2016 |
Jan
(147) |
Feb
(188) |
Mar
(363) |
Apr
(304) |
May
(199) |
Jun
(218) |
Jul
(136) |
Aug
(128) |
Sep
(120) |
Oct
(123) |
Nov
(102) |
Dec
(156) |
2017 |
Jan
(123) |
Feb
(114) |
Mar
(132) |
Apr
(44) |
May
(143) |
Jun
(83) |
Jul
(98) |
Aug
(59) |
Sep
(58) |
Oct
(12) |
Nov
(14) |
Dec
(16) |
2018 |
Jan
(18) |
Feb
(24) |
Mar
(41) |
Apr
(16) |
May
(19) |
Jun
(31) |
Jul
(3) |
Aug
(33) |
Sep
(11) |
Oct
(11) |
Nov
|
Dec
|
2019 |
Jan
(21) |
Feb
(66) |
Mar
(72) |
Apr
(69) |
May
(63) |
Jun
(49) |
Jul
(55) |
Aug
(38) |
Sep
(66) |
Oct
(51) |
Nov
(66) |
Dec
(97) |
2020 |
Jan
(98) |
Feb
(95) |
Mar
(83) |
Apr
(121) |
May
(91) |
Jun
(137) |
Jul
(94) |
Aug
(91) |
Sep
(60) |
Oct
(81) |
Nov
(82) |
Dec
(64) |
2021 |
Jan
(66) |
Feb
(50) |
Mar
(52) |
Apr
(110) |
May
(160) |
Jun
(94) |
Jul
(97) |
Aug
(99) |
Sep
(160) |
Oct
(118) |
Nov
(117) |
Dec
(119) |
2022 |
Jan
(90) |
Feb
(93) |
Mar
(75) |
Apr
(70) |
May
(61) |
Jun
(153) |
Jul
(82) |
Aug
(118) |
Sep
(127) |
Oct
(121) |
Nov
(78) |
Dec
(84) |
2023 |
Jan
(80) |
Feb
(75) |
Mar
(92) |
Apr
(103) |
May
(89) |
Jun
(89) |
Jul
(106) |
Aug
(87) |
Sep
(183) |
Oct
(128) |
Nov
(173) |
Dec
(116) |
2024 |
Jan
(144) |
Feb
(120) |
Mar
(113) |
Apr
(107) |
May
(84) |
Jun
(95) |
Jul
(100) |
Aug
(135) |
Sep
(119) |
Oct
(93) |
Nov
(91) |
Dec
(93) |
2025 |
Jan
(104) |
Feb
(165) |
Mar
(120) |
Apr
(124) |
May
(90) |
Jun
(141) |
Jul
(220) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-27 11:38:54
|
Update of /cvsroot/firebird/interbase In directory slayer.i.sourceforge.net:/tmp/cvs-serv31410/interbase Modified Files: ChangeLog Log Message: Updated ChangeLog Index: ChangeLog =================================================================== RCS file: /cvsroot/firebird/interbase/ChangeLog,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -r1.5 -r1.6 *** ChangeLog 2000/11/24 17:33:15 1.5 --- ChangeLog 2000/11/27 11:38:49 1.6 *************** *** 1,2 **** --- 1,20 ---- + 2000-11-27 10:26 fsg + + * interbase/gpre/: form.c, form_trn.c, gpre.h, par.c: + + Fixed bugs in gpre to handle PYXIS forms and allow edit.e and + fred.e to go through gpre without errors (and correct result). + + This is a partial fix until all PYXIS datatypes are adjusted in + frm_trn.c + + removed some compiler warnings too + + 2000-11-24 18:33 fsg + + * interbase/ChangeLog: + + Updated ChangeLog + 2000-11-24 18:23 fsg |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-27 09:26:26
|
Update of /cvsroot/firebird/interbase/gpre In directory slayer.i.sourceforge.net:/tmp/cvs-serv12584/interbase/gpre Modified Files: form.c form_trn.c gpre.h par.c Log Message: Fixed bugs in gpre to handle PYXIS forms and allow edit.e and fred.e to go through gpre without errors (and correct result). This is a partial fix until all PYXIS datatypes are adjusted in frm_trn.c removed some compiler warnings too Index: form.c =================================================================== RCS file: /cvsroot/firebird/interbase/gpre/form.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** form.c 2000/08/03 20:44:01 1.1.1.1 --- form.c 2000/11/27 09:26:13 1.2 *************** *** 20,23 **** --- 20,34 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/27 09:26:13 fsg + * Fixed bugs in gpre to handle PYXIS forms + * and allow edit.e and fred.e to go through + * gpre without errors (and correct result). + * + * This is a partial fix until all + * PYXIS datatypes are adjusted in frm_trn.c + * + * removed some compiler warnings too + * */ *************** *** 59,63 **** USHORT l; ! for (p = name; *p = UPPER (*string); string++, p++) ; --- 70,74 ---- USHORT l; ! for (p = name; (*p = UPPER (*string)); string++, p++) ; *************** *** 75,79 **** if (!(handle = PYXIS_find_field (object, name))) return NULL; - /* Make field block and decrypt data type */ --- 86,89 ---- *************** *** 134,138 **** return NULL; ! for (p = name; *p = UPPER (*string); string++, p++) ; --- 144,148 ---- return NULL; ! for (p = name; (*p = UPPER (*string)); string++, p++) ; *************** *** 156,160 **** if (!form->form_object) return NULL; ! form->form_dbb = dbb; form->form_next = dbb->dbb_forms; --- 166,170 ---- if (!form->form_object) return NULL; ! /*PYXIS_print(form->form_object,0);*/ form->form_dbb = dbb; form->form_next = dbb->dbb_forms; *************** *** 163,167 **** /* Make up form block, etc */ ! form->form_name = symbol = MSC_symbol (SYM_form, name, l, form); HSH_insert (symbol); --- 173,177 ---- /* Make up form block, etc */ ! form->form_name = symbol = MSC_symbol (SYM_form, name, l,(CTX) form); HSH_insert (symbol); Index: form_trn.c =================================================================== RCS file: /cvsroot/firebird/interbase/gpre/form_trn.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** form_trn.c 2000/08/03 20:44:01 1.1.1.1 --- form_trn.c 2000/11/27 09:26:13 1.2 *************** *** 20,29 **** --- 20,88 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/27 09:26:13 fsg + * Fixed bugs in gpre to handle PYXIS forms + * and allow edit.e and fred.e to go through + * gpre without errors (and correct result). + * + * This is a partial fix until all + * PYXIS datatypes are adjusted in frm_trn.c + * + * removed some compiler warnings too + * */ #include "../jrd/common.h" #include "../jrd/gds.h" + + /* + The datatypes from dsc.h + can't be used with + PYXIS forms + FSG 26.Nov.2000 #include "../jrd/dsc.h" + + */ #include "../gpre/form__proto.h" + + + + /* + I have figured out some of the + PYXIS datatypes + + The following seem to be right + FSG 26.Nov.2000 + */ + + #define dtype_null 0 + #define dtype_text 1 + #define dtype_cstring 2 + #define dtype_varying 3 + #define dtype_short 4 + #define dtype_long 5 + #define dtype_blob 10 + + + /* FIX ME the following are + from dsc.h and are + probably wrong + FSG 26.Nov.2000 + */ + + #define dtype_packed 6 + #define dtype_byte 7 + #define dtype_real 11 + #define dtype_double 12 + #define dtype_d_float 13 + #define dtype_sql_date 14 + #define dtype_sql_time 15 + #define dtype_timestamp 16 + #define dtype_quad 17 + #define dtype_array 18 + #define dtype_int64 19 + + + extern USHORT MET_get_dtype (USHORT, USHORT, USHORT *); Index: gpre.h =================================================================== RCS file: /cvsroot/firebird/interbase/gpre/gpre.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** gpre.h 2000/11/16 15:54:29 1.2 --- gpre.h 2000/11/27 09:26:13 1.3 *************** *** 21,24 **** --- 21,34 ---- * Contributor(s): ______________________________________. * $Log$ + * Revision 1.3 2000/11/27 09:26:13 fsg + * Fixed bugs in gpre to handle PYXIS forms + * and allow edit.e and fred.e to go through + * gpre without errors (and correct result). + * + * This is a partial fix until all + * PYXIS datatypes are adjusted in frm_trn.c + * + * removed some compiler warnings too + * * Revision 1.2 2000/11/16 15:54:29 fsg * Added new switch -verbose to gpre that will dump *************** *** 930,934 **** #define PRV_references 32 /* reference privilege */ #define PRV_grant_option 64 /* privilege to grant privileges being granted */ ! #define PRV_all 128 /* all privileges being granted/revoked /* Ready block */ --- 940,944 ---- #define PRV_references 32 /* reference privilege */ #define PRV_grant_option 64 /* privilege to grant privileges being granted */ ! #define PRV_all 128 /* all privileges being granted/revoked */ /* Ready block */ Index: par.c =================================================================== RCS file: /cvsroot/firebird/interbase/gpre/par.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** par.c 2000/08/03 20:44:07 1.1.1.1 --- par.c 2000/11/27 09:26:13 1.2 *************** *** 20,23 **** --- 20,34 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/27 09:26:13 fsg + * Fixed bugs in gpre to handle PYXIS forms + * and allow edit.e and fred.e to go through + * gpre without errors (and correct result). + * + * This is a partial fix until all + * PYXIS datatypes are adjusted in frm_trn.c + * + * removed some compiler warnings too + * */ *************** *** 285,288 **** --- 296,300 ---- sw_sql = FALSE; return action; + default: break; } *************** *** 336,339 **** --- 348,352 ---- cur_statement = NULL; return par_menu_entree_att(); + default: break; } } *************** *** 691,695 **** *--ptr = (NOD) POP (&stack); ! PUSH (action, &events); if (!sql) --- 704,708 ---- *--ptr = (NOD) POP (&stack); ! PUSH ( action, &events); if (!sql) *************** *** 814,818 **** cur_routine = MAKE_ACTION (NULL_PTR, ACT_routine); cur_routine->act_flags |= ACT_main; ! PUSH (cur_routine, &routine_stack); routine_decl = TRUE; --- 827,831 ---- cur_routine = MAKE_ACTION (NULL_PTR, ACT_routine); cur_routine->act_flags |= ACT_main; ! PUSH ( (NOD) cur_routine, &routine_stack); routine_decl = TRUE; *************** *** 1156,1160 **** while (TRUE) { ! if (symbol = MSC_find_symbol (token.tok_symbol, SYM_database)) { db = (DBB) symbol->sym_object; --- 1169,1173 ---- while (TRUE) { ! if ((symbol = MSC_find_symbol (token.tok_symbol, SYM_database))) { db = (DBB) symbol->sym_object; *************** *** 1491,1495 **** case lan_cxx: do { ! PUSH (PAR_native_value (FALSE, FALSE), &based_on->bas_variables); } while (MATCH (KW_COMMA)); /* --- 1504,1508 ---- case lan_cxx: do { ! PUSH ( (NOD) PAR_native_value (FALSE, FALSE), &based_on->bas_variables); } while (MATCH (KW_COMMA)); /* *************** *** 1536,1539 **** --- 1549,1553 ---- based_on->bas_variables = hold; } + default: break; } *************** *** 2017,2021 **** item->nod_arg [0] = MSC_unary (nod_value, change); item->nod_arg [1] = MSC_unary (nod_field, change); ! PUSH (item, &stack); count++; --- 2031,2035 ---- item->nod_arg [0] = MSC_unary (nod_value, change); item->nod_arg [1] = MSC_unary (nod_field, change); ! PUSH ( (NOD) item, &stack); count++; *************** *** 2032,2036 **** item->nod_arg [0] = MSC_unary (nod_value, flag); item->nod_arg [1] = MSC_unary (nod_field, flag); ! PUSH (item, &stack); count++; } --- 2046,2050 ---- item->nod_arg [0] = MSC_unary (nod_value, flag); item->nod_arg [1] = MSC_unary (nod_field, flag); ! PUSH ( (NOD) item, &stack); count++; } *************** *** 2169,2173 **** item->nod_arg [0] = MSC_unary (nod_field, change); item->nod_arg [1] = MSC_unary (nod_value, change); ! PUSH (item, &stack); count++; } --- 2183,2187 ---- item->nod_arg [0] = MSC_unary (nod_field, change); item->nod_arg [1] = MSC_unary (nod_value, change); ! PUSH ( (NOD) item, &stack); count++; } *************** *** 2181,2185 **** *--ptr = (NOD) POP (&stack); } ! if (context = request->req_contexts) HSH_remove (context->ctx_symbol); --- 2195,2199 ---- *--ptr = (NOD) POP (&stack); } ! if ((context = request->req_contexts)) HSH_remove (context->ctx_symbol); *************** *** 2307,2311 **** action = MAKE_ACTION (request, ACT_s_fetch); ! PUSH (action, &cur_fetch); return action; --- 2321,2325 ---- action = MAKE_ACTION (request, ACT_s_fetch); ! PUSH ( (NOD) action, &cur_fetch); return action; *************** *** 2419,2423 **** action = MAKE_ACTION (request, ACT_for); ! PUSH (action, &cur_for); request->req_rse = rec_expr; --- 2433,2437 ---- action = MAKE_ACTION (request, ACT_for); ! PUSH ( (NOD) action, &cur_for); request->req_rse = rec_expr; *************** *** 2455,2459 **** SYM symbol; ! if (symbol = MSC_find_symbol (token.tok_symbol, type)) { ADVANCE_TOKEN; --- 2469,2473 ---- SYM symbol; ! if ((symbol = MSC_find_symbol (token.tok_symbol, type))) { ADVANCE_TOKEN; *************** *** 2486,2494 **** if (!(context = par_form_menu(SYM_form_map))) if (!(context = par_form_menu (SYM_menu))) return NULL; else return par_menu_display (context); ! request = context->ctx_request; action = MAKE_ACTION (NULL_PTR, ACT_form_display); --- 2500,2509 ---- if (!(context = par_form_menu(SYM_form_map))) + { if (!(context = par_form_menu (SYM_menu))) return NULL; else return par_menu_display (context); ! } request = context->ctx_request; action = MAKE_ACTION (NULL_PTR, ACT_form_display); *************** *** 2615,2619 **** reference = EXP_post_field (field, request->req_contexts, FALSE); reference->ref_friend = parent; ! PUSH (reference, stack); if (!MATCH (KW_COMMA)) break; --- 2630,2634 ---- reference = EXP_post_field (field, request->req_contexts, FALSE); reference->ref_friend = parent; ! PUSH ( (NOD) reference, stack); if (!MATCH (KW_COMMA)) break; *************** *** 2676,2679 **** --- 2691,2695 ---- PAR_error ("no database for operation"); + if ((dbb_symbol = token.tok_symbol) && dbb_symbol->sym_type == SYM_database) *************** *** 2686,2690 **** } else for (dbb = isc_databases; dbb; dbb = dbb->dbb_next) ! if (form = FORM_lookup_form (dbb, token.tok_string)) break; --- 2702,2706 ---- } else for (dbb = isc_databases; dbb; dbb = dbb->dbb_next) ! if ((form = FORM_lookup_form (dbb, token.tok_string))) break; *************** *** 2694,2704 **** SYNTAX_ERROR ("form name"); ADVANCE_TOKEN; /* Set up various data structures */ request->req_form = form; ! if (request->req_form_handle = form_handle) request->req_flags |= REQ_exp_form_handle; --- 2710,2726 ---- SYNTAX_ERROR ("form name"); + /* If we do it here, we will miss + the next identifier + FSG 26.Nov.2000 + ADVANCE_TOKEN; + */ + /* Set up various data structures */ request->req_form = form; ! if ((request->req_form_handle = form_handle)) request->req_flags |= REQ_exp_form_handle; *************** *** 2709,2713 **** symbol->sym_object = context; HSH_insert (symbol); ! PUSH (request, &cur_form); return MAKE_ACTION (request, ACT_form_for); --- 2731,2741 ---- symbol->sym_object = context; HSH_insert (symbol); ! PUSH ( (NOD) request, &cur_form); ! ! /* Do it here to get the next one right ! FSG 26.Nov.2000 ! */ ! ! ADVANCE_TOKEN; return MAKE_ACTION (request, ACT_form_for); *************** *** 2807,2815 **** if (!(context = par_form_menu (SYM_form_map))) if (!(context = par_form_menu (SYM_menu))) SYNTAX_ERROR ("form context or menu context"); else return par_menu_item_for (symbol, context, type); ! symbol->sym_type = SYM_form_map; --- 2835,2844 ---- if (!(context = par_form_menu (SYM_form_map))) + { if (!(context = par_form_menu (SYM_menu))) SYNTAX_ERROR ("form context or menu context"); else return par_menu_item_for (symbol, context, type); ! } symbol->sym_type = SYM_form_map; *************** *** 2845,2849 **** HSH_insert (symbol); action = MAKE_ACTION (request, type); ! PUSH (action, &cur_item); /* If this is a FOR_ITEM, generate an index variable */ --- 2874,2878 ---- HSH_insert (symbol); action = MAKE_ACTION (request, type); ! PUSH ( (NOD) action, &cur_item); /* If this is a FOR_ITEM, generate an index variable */ *************** *** 2961,2965 **** sw_pyxis = TRUE; request = MAKE_REQUEST (REQ_menu); ! PUSH (request, &cur_menu); action = MAKE_ACTION (request, ACT_menu); --- 2990,2994 ---- sw_pyxis = TRUE; request = MAKE_REQUEST (REQ_menu); ! PUSH ( (NOD) request, &cur_menu); action = MAKE_ACTION (request, ACT_menu); *************** *** 3136,3140 **** symbol->sym_object = context; HSH_insert (symbol); ! PUSH (request, &cur_menu); action = MAKE_ACTION (request, ACT_menu_for); --- 3165,3169 ---- symbol->sym_object = context; HSH_insert (symbol); ! PUSH ( (NOD) request, &cur_menu); action = MAKE_ACTION (request, ACT_menu_for); *************** *** 3179,3183 **** HSH_insert (symbol); action = MAKE_ACTION (request, type); ! PUSH (action, &cur_item); entree = (ENTREE) ALLOC (sizeof (struct entree)); --- 3208,3212 ---- HSH_insert (symbol); action = MAKE_ACTION (request, type); ! PUSH ( (NOD) action, &cur_item); entree = (ENTREE) ALLOC (sizeof (struct entree)); *************** *** 3211,3215 **** modify = (UPD) ALLOC (UPD_LEN); ! PUSH (modify, &cur_modify); /* If the next token isn't a context variable, we can't continue */ --- 3240,3244 ---- modify = (UPD) ALLOC (UPD_LEN); ! PUSH ( (NOD) modify, &cur_modify); /* If the next token isn't a context variable, we can't continue */ *************** *** 3295,3299 **** action->act_object = (REF) cur_statement; ! PUSH (action, &cur_error); if (cur_statement->act_pair) --- 3324,3328 ---- action->act_object = (REF) cur_statement; ! PUSH ( (NOD) action, &cur_error); if (cur_statement->act_pair) *************** *** 3423,3427 **** if (act_op == ACT_blob_for) ! PUSH (action, &cur_for); /* Need to eat the semicolon if present */ --- 3452,3456 ---- if (act_op == ACT_blob_for) ! PUSH ( (NOD) action, &cur_for); /* Need to eat the semicolon if present */ *************** *** 3514,3518 **** if (!(action->act_flags & ACT_decl)) { ! PUSH (cur_routine, &routine_stack); cur_routine = action; } --- 3543,3547 ---- if (!(action->act_flags & ACT_decl)) { ! PUSH ( (NOD) cur_routine, &routine_stack); cur_routine = action; } *************** *** 3539,3547 **** if (!SINGLE_QUOTED(token.tok_type)) SYNTAX_ERROR ("quoted string"); - string = (TEXT*) ALLOC (token.tok_length + 1); COPY (token.tok_string , token.tok_length , string); - ADVANCE_TOKEN; return string; } --- 3568,3579 ---- if (!SINGLE_QUOTED(token.tok_type)) SYNTAX_ERROR ("quoted string"); string = (TEXT*) ALLOC (token.tok_length + 1); COPY (token.tok_string , token.tok_length , string); + /* Adjust size to include quotes + FSG 26.Nov.2000 + */ + token.tok_length=token.tok_length+2; + ADVANCE_TOKEN; return string; } *************** *** 3811,3816 **** /* both actions go on the cur_store stack, the store topmost */ ! PUSH (action, &cur_store); ! PUSH (begin_action, &cur_store); return action; } --- 3843,3848 ---- /* both actions go on the cur_store stack, the store topmost */ ! PUSH ( (NOD) action, &cur_store); ! PUSH ( (NOD) begin_action, &cur_store); return action; } *************** *** 3958,3962 **** par_options (request, FALSE); action = MAKE_ACTION (request, ACT_store); ! PUSH (action, &cur_store); context = EXP_context (request, NULL_PTR); --- 3990,3994 ---- par_options (request, FALSE); action = MAKE_ACTION (request, ACT_store); ! PUSH ( (NOD) action, &cur_store); context = EXP_context (request, NULL_PTR); |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-24 17:33:19
|
Update of /cvsroot/firebird/interbase In directory slayer.i.sourceforge.net:/tmp/cvs-serv26262/interbase Modified Files: ChangeLog Log Message: Updated ChangeLog Index: ChangeLog =================================================================== RCS file: /cvsroot/firebird/interbase/ChangeLog,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** ChangeLog 2000/11/22 17:24:16 1.4 --- ChangeLog 2000/11/24 17:33:15 1.5 *************** *** 1,7 **** ! 2000-11-22 08:02 PJPG ! * interbase/isql/extract.e ! Change comment from // to /* style in get_procedure_args. 2000-11-19 08:02 fsg --- 1,38 ---- ! 2000-11-24 18:23 fsg ! * interbase/pyxis/debug.c: ! Another little fix in pyxis/debug.c that nobody ever will notice ! :-) Will print correct names for this forms stuff now. ! ! 2000-11-22 18:24 patrickgriffin ! ! * interbase/ChangeLog: ! ! Correct the name of the modified file in change log. ! ! ...pat ! ! 2000-11-22 18:07 patrickgriffin ! ! * interbase/: ChangeLog, isql/extract.e: ! ! In get_procedure_args change comment style from // to /* ! ! ...pat ! ! 2000-11-20 18:17 fsg ! ! * interbase/pyxis/edit.e: ! ! Changes to get edit.e through gpre 6.0 Still have to find out why ! gpre isn't processing PYXYS FORM FIELDS correctly. Probably no one ! ever will need this. But who cares :-) ! ! 2000-11-19 08:43 fsg ! ! * interbase/ChangeLog: ! ! Updated ChangeLog 2000-11-19 08:02 fsg |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-24 17:23:05
|
Update of /cvsroot/firebird/interbase/pyxis In directory slayer.i.sourceforge.net:/tmp/cvs-serv24964/interbase/pyxis Modified Files: debug.c Log Message: Another little fix in pyxis/debug.c that nobody ever will notice :-) Will print correct names for this forms stuff now. Index: debug.c =================================================================== RCS file: /cvsroot/firebird/interbase/pyxis/debug.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** debug.c 2000/08/03 20:53:44 1.1.1.1 --- debug.c 2000/11/24 17:23:02 1.2 *************** *** 20,23 **** --- 20,29 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/24 17:23:02 fsg + * Another little fix in pyxis/debug.c that nobody + * ever will notice :-) + * Will print correct names for this forms stuff now. + * */ *************** *** 29,33 **** extern OBJ PYXIS_get_attribute_value(); ! #define ATT(name) "name", static SCHAR *attribute_names [] = { --- 35,42 ---- extern OBJ PYXIS_get_attribute_value(); ! /* changed "name" to #name to get what was intended ! FSG 24.Nov.2000 ! */ ! #define ATT(name) #name, static SCHAR *attribute_names [] = { |
From: Patrick J. P. G. <pat...@us...> - 2000-11-22 17:24:19
|
Update of /cvsroot/firebird/interbase In directory slayer.i.sourceforge.net:/tmp/cvs-serv9109 Modified Files: ChangeLog Log Message: Correct the name of the modified file in change log. ...pat Index: ChangeLog =================================================================== RCS file: /cvsroot/firebird/interbase/ChangeLog,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** ChangeLog 2000/11/22 17:07:25 1.3 --- ChangeLog 2000/11/22 17:24:16 1.4 *************** *** 1,5 **** 2000-11-22 08:02 PJPG ! * interbase/isql/show.e: Change comment from // to /* style in get_procedure_args. --- 1,5 ---- 2000-11-22 08:02 PJPG ! * interbase/isql/extract.e Change comment from // to /* style in get_procedure_args. |
From: Patrick J. P. G. <pat...@us...> - 2000-11-22 17:07:28
|
Update of /cvsroot/firebird/interbase/isql In directory slayer.i.sourceforge.net:/tmp/cvs-serv7209/isql Modified Files: extract.e Log Message: In get_procedure_args change comment style from // to /* ...pat Index: extract.e =================================================================== RCS file: /cvsroot/firebird/interbase/isql/extract.e,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** extract.e 2000/11/18 16:49:24 1.2 --- extract.e 2000/11/22 17:07:25 1.3 *************** *** 21,24 **** --- 21,29 ---- * Contributor(s): ______________________________________. * $Log$ + * Revision 1.3 2000/11/22 17:07:25 patrickgriffin + * In get_procedure_args change comment style from // to /* + * + * ...pat + * * Revision 1.2 2000/11/18 16:49:24 fsg * Increased PRINT_BUFFER_LENGTH to 2048 to show larger plans *************** *** 772,780 **** first_time = FALSE; if (ptype==0) ! { // this is the input part ISQL_printf (Out, "("); } else ! { // we are in the output part ISQL_printf (Out, "RETURNS ("); } --- 777,785 ---- first_time = FALSE; if (ptype==0) ! { /* this is the input part */ ISQL_printf (Out, "("); } else ! { /* we are in the output part */ ISQL_printf (Out, "RETURNS ("); } |
From: Patrick J. P. G. <pat...@us...> - 2000-11-22 17:07:28
|
Update of /cvsroot/firebird/interbase In directory slayer.i.sourceforge.net:/tmp/cvs-serv7209 Modified Files: ChangeLog Log Message: In get_procedure_args change comment style from // to /* ...pat Index: ChangeLog =================================================================== RCS file: /cvsroot/firebird/interbase/ChangeLog,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** ChangeLog 2000/11/19 07:43:07 1.2 --- ChangeLog 2000/11/22 17:07:25 1.3 *************** *** 1,2 **** --- 1,8 ---- + 2000-11-22 08:02 PJPG + + * interbase/isql/show.e: + + Change comment from // to /* style in get_procedure_args. + 2000-11-19 08:02 fsg |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-20 17:17:20
|
Update of /cvsroot/firebird/interbase/pyxis In directory slayer.i.sourceforge.net:/tmp/cvs-serv14592/interbase/pyxis Modified Files: edit.e Log Message: Changes to get edit.e through gpre 6.0 Still have to find out why gpre isn't processing PYXYS FORM FIELDS correctly. Probably no one ever will need this. But who cares :-) Index: edit.e =================================================================== RCS file: /cvsroot/firebird/interbase/pyxis/edit.e,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** edit.e 2000/08/03 20:53:45 1.1.1.1 --- edit.e 2000/11/20 17:17:17 1.2 *************** *** 20,23 **** --- 20,31 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/20 17:17:17 fsg + * Changes to get edit.e through gpre 6.0 + * Still have to find out why gpre isn't processing + * PYXYS FORM FIELDS correctly. + * Probably no one ever will need this. + * But who cares :-) + * */ *************** *** 185,199 **** if (c != PYXIS__KEY_ENTER && c != '\n') PYXIS_return_char (window, c); ! CASE_MENU (MENU_HANDLE MENU1 HORIZONTAL) "Edit options: " ! MENU_ENTREE "SELECT": continue; ! MENU_ENTREE "MOVE": if (!object) break; change |= move (window, form, object, attribute); ! MENU_ENTREE "ADD": if (next = add_object (window, form, object, dbb, transaction)) { --- 193,207 ---- if (c != PYXIS__KEY_ENTER && c != '\n') PYXIS_return_char (window, c); ! CASE_MENU (MENU_HANDLE MENU1 HORIZONTAL) 'Edit options: ' ! MENU_ENTREE 'SELECT': continue; ! MENU_ENTREE 'MOVE': if (!object) break; change |= move (window, form, object, attribute); ! MENU_ENTREE 'ADD': if (next = add_object (window, form, object, dbb, transaction)) { *************** *** 202,206 **** } ! MENU_ENTREE "CHANGE": if (!object) break; --- 210,214 ---- } ! MENU_ENTREE 'CHANGE': if (!object) break; *************** *** 219,223 **** edit_field (window, object, x, y, dbb, transaction); ! MENU_ENTREE "DELETE": if (!object) break; --- 227,231 ---- edit_field (window, object, x, y, dbb, transaction); ! MENU_ENTREE 'DELETE': if (!object) break; *************** *** 228,232 **** change = TRUE; ! MENU_ENTREE "REVERSE": if (object) if (attribute->att_name == att_label) --- 236,240 ---- change = TRUE; ! MENU_ENTREE 'REVERSE': if (object) if (attribute->att_name == att_label) *************** *** 239,246 **** change |= reverse (object); ! MENU_ENTREE "SAVE": save_form (window, form, dbb, transaction); ! MENU_ENTREE "Exit": /* set_prototypes (form, TRUE); */ return change; --- 247,254 ---- change |= reverse (object); ! MENU_ENTREE 'SAVE': save_form (window, form, dbb, transaction); ! MENU_ENTREE 'Exit': /* set_prototypes (form, TRUE); */ return change; *************** *** 317,322 **** USHORT c, x, y, change; ! CASE_MENU (MENU_HANDLE MENU2 HORIZONTAL) "Add options: "; ! MENU_ENTREE "TEXT": x = y = 0; if (object) --- 325,330 ---- USHORT c, x, y, change; ! CASE_MENU (MENU_HANDLE MENU2 HORIZONTAL) 'Add options: '; ! MENU_ENTREE 'TEXT': x = y = 0; if (object) *************** *** 331,335 **** return (ATT) field; ! MENU_ENTREE "FIELD": field = (OBJ) PYXIS_create_object (NULL_PTR, 0); default_position (form, att_field, &x, &y); --- 339,343 ---- return (ATT) field; ! MENU_ENTREE 'FIELD': field = (OBJ) PYXIS_create_object (NULL_PTR, 0); default_position (form, att_field, &x, &y); *************** *** 342,352 **** return add_field (form, field); ! MENU_ENTREE "DATABASE FIELDS": return (ATT) copy_fields (window, form, object, dbb, transaction); ! MENU_ENTREE "REPEATING SUB-FORM": return (ATT) add_repeating (window, form, object, dbb, transaction); ! MENU_ENTREE "Exit": return NULL; --- 350,360 ---- return add_field (form, field); ! MENU_ENTREE 'DATABASE FIELDS': return (ATT) copy_fields (window, form, object, dbb, transaction); ! MENU_ENTREE 'REPEATING SUB-FORM': return (ATT) add_repeating (window, form, object, dbb, transaction); ! MENU_ENTREE 'Exit': return NULL; *************** *** 713,719 **** if (prototype = GET_OBJECT (field, att_prototype)) ! CASE_MENU (MENU_HANDLE MENU3 HORIZONTAL) "Change: " ! MENU_ENTREE "CHARACTERISTICS": manual_load (&NAME_PROMPT, form_field_name); FOR_FORM (TAG FORM_HANDLE NAME_PROMPT) F IN FIELD_NAME --- 721,727 ---- if (prototype = GET_OBJECT (field, att_prototype)) ! CASE_MENU (MENU_HANDLE MENU3 HORIZONTAL) 'Change: ' ! MENU_ENTREE 'CHARACTERISTICS': manual_load (&NAME_PROMPT, form_field_name); FOR_FORM (TAG FORM_HANDLE NAME_PROMPT) F IN FIELD_NAME *************** *** 725,751 **** return; ! MENU_ENTREE "REGION": size_form (window, field); return; ! MENU_ENTREE "SUB-ITEM": PYXIS_edit (window, prototype, dbb, transaction); return; ! MENU_ENTREE "SIZE": size_form (window, prototype); return; ! MENU_ENTREE "Exit": return; END_MENU else ! CASE_MENU (MENU_HANDLE MENU4 HORIZONTAL) "Change: " ! MENU_ENTREE "CHARACTERISTICS": ! MENU_ENTREE "ENUMERATIONS": return edit_enumerations (window, field); ! MENU_ENTREE "EXIT": return; END_MENU; --- 733,759 ---- return; ! MENU_ENTREE 'REGION': size_form (window, field); return; ! MENU_ENTREE 'SUB-ITEM': PYXIS_edit (window, prototype, dbb, transaction); return; ! MENU_ENTREE 'SIZE': size_form (window, prototype); return; ! MENU_ENTREE 'Exit': return; END_MENU else ! CASE_MENU (MENU_HANDLE MENU4 HORIZONTAL) 'Change: ' ! MENU_ENTREE 'CHARACTERISTICS': ! MENU_ENTREE 'ENUMERATIONS': return edit_enumerations (window, field); ! MENU_ENTREE 'EXIT': return; END_MENU; *************** *** 1004,1021 **** SLONG x, y, min_x, min_y, delta_x, delta_y; ! CASE_MENU (MENU_HANDLE MENU5 HORIZONTAL) "Move options: " ! MENU_ENTREE "ITEM": return move_item (window, form, object); ! MENU_ENTREE "SOME": option = e_some; ! MENU_ENTREE "MOST": option = e_most; ! MENU_ENTREE "ALL": option = e_all; ! MENU_ENTREE "Exit": return FALSE; END_MENU; --- 1012,1029 ---- SLONG x, y, min_x, min_y, delta_x, delta_y; ! CASE_MENU (MENU_HANDLE MENU5 HORIZONTAL) 'Move options: ' ! MENU_ENTREE 'ITEM': return move_item (window, form, object); ! MENU_ENTREE 'SOME': option = e_some; ! MENU_ENTREE 'MOST': option = e_most; ! MENU_ENTREE 'ALL': option = e_all; ! MENU_ENTREE 'Exit': return FALSE; END_MENU; *************** *** 1244,1264 **** SLONG value; ! CASE_MENU (MENU_HANDLE MENU6 HORIZONTAL) "Reverse options: " ! MENU_ENTREE "INVERT": value = !GET_VALUE (object, att_reverse_video); REPLACE_ATTRIBUTE (object, att_reverse_video, attype_numeric, value); return TRUE; ! MENU_ENTREE "REVERSE ON UPDATE": REPLACE_ATTRIBUTE (object, att_reverse_for_update, attype_numeric, TRUE); PYXIS_delete_named_attribute (object, att_reverse_video); return TRUE; ! MENU_ENTREE "NORMAL": PYXIS_delete_named_attribute (object, att_reverse_for_update); PYXIS_delete_named_attribute (object, att_reverse_video); return TRUE; ! MENU_ENTREE "Exit": return FALSE; --- 1252,1272 ---- SLONG value; ! CASE_MENU (MENU_HANDLE MENU6 HORIZONTAL) 'Reverse options: ' ! MENU_ENTREE 'INVERT': value = !GET_VALUE (object, att_reverse_video); REPLACE_ATTRIBUTE (object, att_reverse_video, attype_numeric, value); return TRUE; ! MENU_ENTREE 'REVERSE ON UPDATE': REPLACE_ATTRIBUTE (object, att_reverse_for_update, attype_numeric, TRUE); PYXIS_delete_named_attribute (object, att_reverse_video); return TRUE; ! MENU_ENTREE 'NORMAL': PYXIS_delete_named_attribute (object, att_reverse_for_update); PYXIS_delete_named_attribute (object, att_reverse_video); return TRUE; ! MENU_ENTREE 'Exit': return FALSE; |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-19 07:43:10
|
Update of /cvsroot/firebird/interbase In directory slayer.i.sourceforge.net:/tmp/cvs-serv11875/interbase Modified Files: ChangeLog Log Message: Updated ChangeLog Index: ChangeLog =================================================================== RCS file: /cvsroot/firebird/interbase/ChangeLog,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** ChangeLog 2000/11/18 14:14:47 1.1 --- ChangeLog 2000/11/19 07:43:07 1.2 *************** *** 1,5 **** 2000-11-18 07:50 fsg ! * build_docs/: ibbuild_linux_cvs_build.hmtl, ibbuild_linux_cvs_build.html: --- 1,26 ---- + 2000-11-19 08:02 fsg + + * interbase/isql/show.e: + [...1903 lines suppressed...] ! * interbase/: setup_build, setup_build.ksh, setup_dirs, ! setup_dirs.ksh, alice/alice.c, alice/alice.h, alice/alice_proto.h, alice/aliceswi.h, alice/all.c, alice/all.h, alice/all_proto.h, alice/alloc.h, alice/blk.h, alice/depends.mak, alice/exe.c, *************** *** 1855,1860 **** 2000-08-03 22:42 skywalker ! * setup_build, setup_build.ksh, setup_dirs, setup_dirs.ksh, ! alice/alice.c, alice/alice.h, alice/alice_proto.h, alice/aliceswi.h, alice/all.c, alice/all.h, alice/all_proto.h, alice/alloc.h, alice/blk.h, alice/depends.mak, alice/exe.c, --- 1883,1888 ---- 2000-08-03 22:42 skywalker ! * interbase/: setup_build, setup_build.ksh, setup_dirs, ! setup_dirs.ksh, alice/alice.c, alice/alice.h, alice/alice_proto.h, alice/aliceswi.h, alice/all.c, alice/all.h, alice/all_proto.h, alice/alloc.h, alice/blk.h, alice/depends.mak, alice/exe.c, |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-19 07:02:52
|
Update of /cvsroot/firebird/interbase/isql In directory slayer.i.sourceforge.net:/tmp/cvs-serv10206/interbase/isql Modified Files: show.e Log Message: Change in show.e to use CHARACTER_LENGTH instead of FIELD_LENGTH in SHOW PROCEDURE Index: show.e =================================================================== RCS file: /cvsroot/firebird/interbase/isql/show.e,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** show.e 2000/08/03 20:49:25 1.1.1.1 --- show.e 2000/11/19 07:02:49 1.2 *************** *** 20,23 **** --- 20,28 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/19 07:02:49 fsg + * Change in show.e to use CHARACTER_LENGTH instead of FIELD_LENGTH in + * SHOW PROCEDURE + * */ *************** *** 3233,3240 **** break; } ! if (((FLD.RDB$FIELD_TYPE == FCHAR) || (FLD.RDB$FIELD_TYPE == VARCHAR)) && !FLD.RDB$CHARACTER_LENGTH.NULL) ! sprintf (lenstring, "(%d)", FLD.RDB$FIELD_LENGTH); else sprintf (lenstring, ""); --- 3238,3247 ---- break; } ! /* Use RDB$CHARACTER_LENGTH instead of RDB$FIELD_LENGTH ! FSG 19.Nov.2000 ! */ if (((FLD.RDB$FIELD_TYPE == FCHAR) || (FLD.RDB$FIELD_TYPE == VARCHAR)) && !FLD.RDB$CHARACTER_LENGTH.NULL) ! sprintf (lenstring, "(%d)", FLD.RDB$CHARACTER_LENGTH); else sprintf (lenstring, ""); |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-18 16:49:27
|
Update of /cvsroot/firebird/interbase/isql In directory slayer.i.sourceforge.net:/tmp/cvs-serv15190/interbase/isql Modified Files: extract.e isql.e isql.h Log Message: Increased PRINT_BUFFER_LENGTH to 2048 to show larger plans Fixed Bug #122563 in extract.e get_procedure_args Apparently this has to be done in show.e also, but that is for another day :-) Index: extract.e =================================================================== RCS file: /cvsroot/firebird/interbase/isql/extract.e,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** extract.e 2000/08/03 20:49:19 1.1.1.1 --- extract.e 2000/11/18 16:49:24 1.2 *************** *** 20,23 **** --- 20,30 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/18 16:49:24 fsg + * Increased PRINT_BUFFER_LENGTH to 2048 to show larger plans + * Fixed Bug #122563 in extract.e get_procedure_args + * Apparently this has to be done in show.e also, + * but that is for another day :-) + * */ *************** *** 79,83 **** static SCHAR *Procterm = "^"; /* TXNN: script use only */ ! static TEXT Print_buffer[512]; static TEXT SQL_identifier[BUFFER_LENGTH128]; static TEXT SQL_identifier2[BUFFER_LENGTH128]; --- 86,96 ---- static SCHAR *Procterm = "^"; /* TXNN: script use only */ ! ! /* Maybe 512 would be really enough as Print_buffer size, but ! as we have PRINT_BUFFER_LENGTH in isql.h, we should use it ! FSG 17.Nov.2000 ! */ ! ! static TEXT Print_buffer[PRINT_BUFFER_LENGTH]; static TEXT SQL_identifier[BUFFER_LENGTH128]; static TEXT SQL_identifier2[BUFFER_LENGTH128]; *************** *** 126,130 **** sprintf (Print_buffer, ! "/*= Command Line -sqldialect %d is over writted by ==*/%s", SQL_dialect, NEWLINE); ISQL_printf (Out, Print_buffer); --- 139,143 ---- sprintf (Print_buffer, ! "/*= Command Line -sqldialect %d is overwritten by ==*/%s", SQL_dialect, NEWLINE); ISQL_printf (Out, Print_buffer); *************** *** 412,415 **** --- 425,429 ---- } + if ((FLD.RDB$FIELD_TYPE == FCHAR) || (FLD.RDB$FIELD_TYPE == VARCHAR)) if (FLD.RDB$CHARACTER_LENGTH.NULL) *************** *** 727,743 **** * **************************************/ ! SSHORT first_time, i, header = TRUE; TEXT msg [MSG_LENGTH]; SCHAR char_sets [86]; /* query to retrieve the parameters. */ { first_time = TRUE; ! /* Parameter types 0 = input first */ FOR PRM IN RDB$PROCEDURE_PARAMETERS CROSS FLD IN RDB$FIELDS WITH PRM.RDB$PROCEDURE_NAME = proc_name AND PRM.RDB$FIELD_SOURCE EQ FLD.RDB$FIELD_NAME AND ! PRM.RDB$PARAMETER_TYPE = 0 SORTED BY PRM.RDB$PARAMETER_NUMBER --- 741,769 ---- * **************************************/ ! SSHORT ptype,first_time, i, header = TRUE; TEXT msg [MSG_LENGTH]; SCHAR char_sets [86]; /* query to retrieve the parameters. */ + { + + + /* placed the two identical code blocks into one + for loop as suggested by Ann H. and Claudio C. + FSG 18.Nov.2000 + */ + + /* Parameter types 0 = input */ + /* Parameter types 1 = return */ + + for (ptype = 0; ptype < 2; ptype++) { first_time = TRUE; ! FOR PRM IN RDB$PROCEDURE_PARAMETERS CROSS FLD IN RDB$FIELDS WITH PRM.RDB$PROCEDURE_NAME = proc_name AND PRM.RDB$FIELD_SOURCE EQ FLD.RDB$FIELD_NAME AND ! PRM.RDB$PARAMETER_TYPE = ptype SORTED BY PRM.RDB$PARAMETER_NUMBER *************** *** 745,750 **** { first_time = FALSE; ! ISQL_printf (Out, "("); ! } else { --- 771,783 ---- { first_time = FALSE; ! if (ptype==0) ! { // this is the input part ! ISQL_printf (Out, "("); ! } ! else ! { // we are in the output part ! ISQL_printf (Out, "RETURNS ("); ! } ! } else { *************** *** 825,836 **** break; } - if (((FLD.RDB$FIELD_TYPE == FCHAR) || - (FLD.RDB$FIELD_TYPE == VARCHAR)) && - !FLD.RDB$CHARACTER_LENGTH.NULL) - { - sprintf (Print_buffer, "(%d)", FLD.RDB$FIELD_LENGTH); - ISQL_printf (Out, Print_buffer); - } /* Show international character sets and collations */ if (!FLD.RDB$COLLATION_ID.NULL || !FLD.RDB$CHARACTER_SET_ID.NULL) --- 858,880 ---- break; } + /* Changed this to return RDB$CHARACTER_LENGTH if available + Fix for Bug #122563 + FSG 18.Nov.2000 + */ + if ((FLD.RDB$FIELD_TYPE == FCHAR) || (FLD.RDB$FIELD_TYPE == VARCHAR)) + if (FLD.RDB$CHARACTER_LENGTH.NULL) + { + sprintf (Print_buffer, "(%d)", FLD.RDB$FIELD_LENGTH); + ISQL_printf (Out, Print_buffer); + } + else + { + sprintf (Print_buffer, "(%d)", FLD.RDB$CHARACTER_LENGTH); + ISQL_printf (Out, Print_buffer); + } + + + /* Show international character sets and collations */ if (!FLD.RDB$COLLATION_ID.NULL || !FLD.RDB$CHARACTER_SET_ID.NULL) *************** *** 864,1001 **** ISQL_printf (Out, Print_buffer); } - first_time = TRUE; ! /* Parameter types 1 = return last */ ! FOR PRM IN RDB$PROCEDURE_PARAMETERS CROSS ! FLD IN RDB$FIELDS WITH ! PRM.RDB$PROCEDURE_NAME = proc_name AND ! PRM.RDB$FIELD_SOURCE EQ FLD.RDB$FIELD_NAME AND ! PRM.RDB$PARAMETER_TYPE = 1 ! SORTED BY PRM.RDB$PARAMETER_NUMBER ! ! if (first_time) ! { ! first_time = FALSE; ! ISQL_printf (Out, "RETURNS ("); ! } ! else ! { ! sprintf (Print_buffer, ",%s", NEWLINE); ! ISQL_printf (Out, Print_buffer); ! } ! ! ISQL_blankterm (PRM.RDB$PARAMETER_NAME); ! sprintf (Print_buffer, "%s ", PRM.RDB$PARAMETER_NAME); ! ISQL_printf (Out, Print_buffer); ! ! /* Get column type name to print */ ! for (i = 0; Column_types [i].type; i++) ! if (FLD.RDB$FIELD_TYPE == Column_types [i].type) ! { ! BOOLEAN precision_known = FALSE; ! ! if (major_ods >= ODS_VERSION10) ! { ! /* Handle Integral subtypes NUMERIC and DECIMAL */ ! if ((FLD.RDB$FIELD_TYPE == SMALLINT) || ! (FLD.RDB$FIELD_TYPE == INTEGER) || ! (FLD.RDB$FIELD_TYPE == blr_int64)) ! { ! /* We are ODS >= 10 and could be any Dialect */ ! FOR FLD1 IN RDB$FIELDS WITH ! FLD1.RDB$FIELD_NAME EQ FLD.RDB$FIELD_NAME ! ! if (!FLD1.RDB$FIELD_PRECISION.NULL) ! { ! /* We are Dialect >=3 since FIELD_PRECISION is non-NULL */ ! if (FLD1.RDB$FIELD_SUB_TYPE > 0 && ! FLD1.RDB$FIELD_SUB_TYPE <= MAX_INTSUBTYPES) ! { ! sprintf (Print_buffer, "%s(%d, %d)", ! Integral_subtypes [FLD1.RDB$FIELD_SUB_TYPE], ! FLD1.RDB$FIELD_PRECISION, ! -FLD1.RDB$FIELD_SCALE); ! precision_known = TRUE; ! } ! } ! END_FOR ! ON_ERROR ! ISQL_errmsg (isc_status); ! return; ! END_ERROR; ! } /* if field_type */ ! } /* if major_ods */ ! ! if (precision_known == FALSE) ! { ! /* Take a stab at numerics and decimals */ ! if ((FLD.RDB$FIELD_TYPE == SMALLINT) && ! (FLD.RDB$FIELD_SCALE < 0)) ! { ! sprintf (Print_buffer, "NUMERIC(4, %d)", ! -FLD.RDB$FIELD_SCALE); ! } ! else if ((FLD.RDB$FIELD_TYPE == INTEGER) && ! (FLD.RDB$FIELD_SCALE < 0)) ! { ! sprintf (Print_buffer, "NUMERIC(9, %d)", ! -FLD.RDB$FIELD_SCALE); ! } ! else if ((FLD.RDB$FIELD_TYPE == DOUBLE_PRECISION) && ! (FLD.RDB$FIELD_SCALE < 0)) ! { ! sprintf (Print_buffer, "NUMERIC(15, %d)", ! -FLD.RDB$FIELD_SCALE); ! } ! else ! { ! sprintf (Print_buffer, "%s", ! Column_types [i].type_name); ! } ! } ! ISQL_printf (Out, Print_buffer); ! break; ! } ! ! if (((FLD.RDB$FIELD_TYPE == FCHAR) || ! (FLD.RDB$FIELD_TYPE == VARCHAR)) && !FLD.RDB$CHARACTER_LENGTH.NULL) ! { ! sprintf (Print_buffer, "(%d)", FLD.RDB$FIELD_LENGTH); ! ISQL_printf (Out, Print_buffer); ! } ! ! /* Show international character sets and collations */ ! if (!FLD.RDB$COLLATION_ID.NULL || !FLD.RDB$CHARACTER_SET_ID.NULL) ! { ! char_sets [0] = 0; ! if (FLD.RDB$COLLATION_ID.NULL) ! FLD.RDB$COLLATION_ID = 0; ! ! if (FLD.RDB$CHARACTER_SET_ID.NULL) ! FLD.RDB$CHARACTER_SET_ID = 0; ! ! ISQL_get_character_sets (FLD.RDB$CHARACTER_SET_ID, ! FLD.RDB$COLLATION_ID, FALSE, char_sets); ! if (char_sets [0]) ! ISQL_printf (Out, char_sets); ! } ! END_FOR ! ON_ERROR ! if (!V33) ! { ! ISQL_errmsg (gds__status); ! return; ! } ! END_ERROR; ! if (!first_time) ! { ! sprintf (Print_buffer, ")%s", NEWLINE); ! ISQL_printf (Out, Print_buffer); ! } sprintf (Print_buffer, "AS %s", NEWLINE); ISQL_printf (Out, Print_buffer); ! ! ! } } --- 908,916 ---- ISQL_printf (Out, Print_buffer); } ! }/* end for ptype */ sprintf (Print_buffer, "AS %s", NEWLINE); ISQL_printf (Out, Print_buffer); ! } } Index: isql.e =================================================================== RCS file: /cvsroot/firebird/interbase/isql/isql.e,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** isql.e 2000/09/04 14:43:52 1.4 --- isql.e 2000/11/18 16:49:24 1.5 *************** *** 22,26 **** */ /* ! $Id$ */ --- 22,32 ---- */ /* ! $Log$ ! Revision 1.5 2000/11/18 16:49:24 fsg ! Increased PRINT_BUFFER_LENGTH to 2048 to show larger plans ! Fixed Bug #122563 in extract.e get_procedure_args ! Apparently this has to be done in show.e also, ! but that is for another day :-) ! */ Index: isql.h =================================================================== RCS file: /cvsroot/firebird/interbase/isql/isql.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** isql.h 2000/08/03 20:49:22 1.1.1.1 --- isql.h 2000/11/18 16:49:24 1.2 *************** *** 20,23 **** --- 20,30 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/18 16:49:24 fsg + * Increased PRINT_BUFFER_LENGTH to 2048 to show larger plans + * Fixed Bug #122563 in extract.e get_procedure_args + * Apparently this has to be done in show.e also, + * but that is for another day :-) + * */ *************** *** 30,34 **** /* Define lengths used in isql.e */ ! #define PRINT_BUFFER_LENGTH 1024 #define MAXTERM_LENGTH 32 /* SQL termination character */ #define USER_LENGTH 128 --- 37,45 ---- /* Define lengths used in isql.e */ ! /* Increased this to allow display of somewhat lengthy plans ! hope this will last a year or so :-) ! FSG 17.Nov.2000 ! */ ! #define PRINT_BUFFER_LENGTH 2048 #define MAXTERM_LENGTH 32 /* SQL termination character */ #define USER_LENGTH 128 |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-18 14:14:50
|
Update of /cvsroot/firebird/interbase In directory slayer.i.sourceforge.net:/tmp/cvs-serv13924 Added Files: ChangeLog Log Message: added ChangeLog --- NEW FILE --- 2000-11-18 07:50 fsg * build_docs/: ibbuild_linux_cvs_build.hmtl, ibbuild_linux_cvs_build.html: finally did it :-) 2000-11-17 13:53 fsg * firebird/fsg/TCS/export/global/: INIT.csv, META_SERIES.csv, NOTES.csv, SERIES.csv, SERIES_COMMENT.csv, TESTS.csv: removed some files from private tree 2000-11-16 16:54 fsg * gpre/: gpre.c, gpre.h, gpreswi.h, sqe.c: Added new switch -verbose to gpre that will dump parsed lines to [...2134 lines suppressed...] gpre/movg_proto.h, gpre/msc.c, gpre/msc_proto.h, gpre/noform.c, gpre/par.c, gpre/par_proto.h, gpre/parse.h, gpre/pas.c, gpre/pat.c, gpre/pat.h, gpre/pat_proto.h, gpre/prett_proto.h, gpre/pretty.c, gpre/sdltable.h, gpre/sqe.c, gpre/sqe_proto.h, gpre/sql.c, gpre/sql_proto.h, gpre/words.h, intl/ancyrr.h, intl/anczech.h, intl/angreek1.h, intl/anhundc.h, intl/anpolish.h, intl/ansii850.h, intl/ansiintl.h, intl/ansinor4.h, intl/ansislov.h, intl/ansispan.h, intl/ansiswfn.h, intl/anturk.h, intl/ascii.h, intl/ascii2.h, intl/bllt1ca0.h, intl/bllt1da0.h, intl/bllt1de0.h, intl/bllt1es0.h, intl/bllt1fi0.h, intl/bllt1fr0.h, intl/bllt1is0.h, intl/bllt1it0.h, intl/bllt1nl0.h, intl/bllt1no0.h, intl/bllt1pt0.h, intl/bllt1sv0.h, intl/bllt1uk0.h, intl/bllt1us0.h, intl/blnxtde0.h, intl/blnxtes0.h, intl/blnxtfr0.h, intl/blnxtit0.h, intl/blnxtus0.h, intl/charsets.h, intl/countries.h, intl/country_codes.h, intl/cs_437.h, intl/cs_850.h, intl/cs_852.h, intl/cs_857.h, intl/cs_860.h, intl/cs_861.h, intl/cs_863.h, intl/cs_865.h, intl/cs_big5.c, intl/cs_big5.h, intl/cs_cyrl.h, intl/cs_gb2312.c: Save the whale, feed the poor, and set the sources free. |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-18 06:50:11
|
Update of /cvsroot/firebird/interbase/build_docs In directory slayer.i.sourceforge.net:/tmp/cvs-serv19382/interbase/build_docs Added Files: ibbuild_linux_cvs_build.html Removed Files: ibbuild_linux_cvs_build.hmtl Log Message: finally did it :-) --- NEW FILE --- <html> <head> <meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-5.0 i686) [Netscape]"> </head> <body> <h3> Linux Instructions for building Firebird from CVS</h3> <b>1. Introduction</b> <p>This is the updated "howto" build the database from the firebird CVS tree. <br>Any mistakes, andthere are still likely to be a few are all mine... <p>Regards <p>Mark <br> <p><b>2. What you need</b> <p> InterBaseSS_LI-V6.0.tar - you need one running to build a new one. <br> Interbase source - downloadable from firebird CVS tree (see later for details) <br> <p><b>3. Installing superserver interbase</b> <p> Before you can build interbase you need an existing running interbase. This explains how to install the curent version. <blockquote><i>Create an install directory and put download in it</i></blockquote> $mkdir /tmp/install <br> $cp InterBaseSS_LI-V6.0.tar /tmp/install <br> $cd /tmp/install <br> $tar -xvf InterBaseSS_LI-V6.0.tar <blockquote><i>This results in two files (InterBaseSS_LI-V6.0.tgz, install) in the current directory. To do the install to /opt/interbase do the following. I did this as root user</i></blockquote> $./install -s /tmp/install/InterBaseSS_LI-V6.0.tgz <blockquote><i>The other options to install is -c which installs a classic interbase. You need the full path to the .tgz file. Also in the beta6.0 documentation it explains how to set it up as user 'interbase'.</i> <p><i>I also tried to install it to /usr/local/interbase but that didn't work for two reasons 1. the error message db was stll expected from /opt/interbase/messages.gdb and 2. in was at nfs drive and when i ran the server it keep trying to connect to a server running on the machine that had the nfs drive. Soo stay with /opt and make sure its a local drive.</i> <p><i>Now to start the server</i></blockquote> $cd /opt/interbase/bin <br> $./ibmgr -start -user SYSDBA -password masterkey <blockquote><i>You should get some pleasant messages. Then try it against one of the test database.</i></blockquote> $/opt/interbase/bin <br> $./isql -user SYSDBA -password masterkey <br> SQL>connect /opt/interbase/examples/employee.gdb; <br> SQL>show tables; <br> SQL> <br> <p><b>3. Extracting the source from CVS</b> <blockquote><i> Create a work directory and move into it.</i></blockquote> $mkdir /tmp/build <br> $cd /tmp/build <blockquote><i> Then check out the sources from the firebird CVS tree. This is either:</i></blockquote> $export CVS_RSH=ssh <br> $cvs -z3 -dd...@cv...:/cvsroot/firebird co interbase <p><i> If you are a developer, or</i> <p> $cvs -d:pserver:ano...@cv...:/cvsroot/firebird login <br> $cvs -z3 -d:pserver:ano...@cv...:/cvsroot/firebird co interbase <blockquote><i> If you are not intenting to commit changes.</i></blockquote> <blockquote><i>This creates a subdirectory InterBase with most of the source code.</i></blockquote> <blockquote> </blockquote> <b>4. Install Reference databases</b> <blockquote><i>Build the reference databases used for compiling interbase.</i></blockquote> $cd /tmp/build/InterBase <br> $sh builds/original/buildRefDatabases <blockquote><i>It is important that this happens in the /tmp/build/Interbase directory. It will build a directory /tmp/build/refDatabases which will contain all the required databases..</i></blockquote> <i> Expect the error:</i> <blockquote><i><font size=-1>Use CONNECT or CREATE DATABASE to specify a database</font></i> <br><i><font size=-1>Statement failed, SQLCODE = -902</font></i> <br><i><font size=-1>I/O error for file "/tmp/build/InterBase/metadata.gdb"</font></i> <br><i><font size=-1>-Error while trying to open file</font></i> <br><i><font size=-1>-No such file or directory</font></i></blockquote> <blockquote><i>Is OK, it's just trying to delete the database before creating a new one.</i> <br> </blockquote> <b>5. Setting up the directories.</b> <blockquote><i>Interbase needs a number of symbolic links to databases/source, and directories.</i></blockquote> $cd /tmp/build/InterBase <br> $sh setup_dirs LINUX DEV /tmp/build/refDatabases <blockquote><i>LINUX specifies the system, DEV could also be PROD if yoyu feel lucky, and the last parameter is where we have our reference databases.</i></blockquote> <p><br><b>6. Building.</b> <blockquote><i>We are now ready to start building the database engine. Change to the root directory and start the build.</i></blockquote> $cd /tmp/build/InterBase <p> $build_kits builds SUPER <br> <p><b>7. Testing the build</b> <blockquote><i>You should now (some 4-10 minutes later) have a directory "/tmp/build/InterBase/interbase/" that contains the interbase binary distribution.</i> <p><i>Testing the build basically means shutting down the current database, and starting up the one in the directory:</i></blockquote> <p><br> /tmp/build/InterBase/interbase/bin <br> <p><b>8. Finding out more about the build</b> <p><i>If you want to know more about the build have a look through the file "InterBase/builds/original/000_readme"</i> <br><i>Some of this document will be a straight copy from there, also have a look at:</i> <br><i><a href="http://www.interbase2000.org/highlevelsource.htm">http://www.interbase2000.org/highlevelsource.htm</a></i> <br><i>for an overview of the source directories.</i> <br> <p>Good Luck.... <p>Mark </body> </html> --- ibbuild_linux_cvs_build.hmtl DELETED --- |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-16 15:54:33
|
Update of /cvsroot/firebird/interbase/gpre In directory slayer.i.sourceforge.net:/tmp/cvs-serv12665/interbase/gpre Modified Files: gpre.c gpre.h gpreswi.h sqe.c Log Message: Added new switch -verbose to gpre that will dump parsed lines to stderr Fixed gpre bug in handling row names in WHERE clauses that are reserved words now (DATE etc) (this caused gpre to dump core when parsing tan.e) Fixed gpre bug in handling lower case table aliases in WHERE clauses for sql dialect 2 and 3. (cause a core dump in a test case from C.R. Zamana) Index: gpre.c =================================================================== RCS file: /cvsroot/firebird/interbase/gpre/gpre.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** gpre.c 2000/08/03 20:44:04 1.1.1.1 --- gpre.c 2000/11/16 15:54:29 1.2 *************** *** 20,23 **** --- 20,36 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/16 15:54:29 fsg + * Added new switch -verbose to gpre that will dump + * parsed lines to stderr + * + * Fixed gpre bug in handling row names in WHERE clauses + * that are reserved words now (DATE etc) + * (this caused gpre to dump core when parsing tan.e) + * + * Fixed gpre bug in handling lower case table aliases + * in WHERE clauses for sql dialect 2 and 3. + * (cause a core dump in a test case from C.R. Zamana) + * */ *************** *** 318,322 **** sw_know_interp = FALSE; sw_interp = 0; ! sw_sql_dialect = compiletime_db_dialect = SQL_DIALECT_V5; --- 331,336 ---- sw_know_interp = FALSE; sw_interp = 0; ! /* FSG 14.Nov.2000 */ ! sw_verbose = FALSE; sw_sql_dialect = compiletime_db_dialect = SQL_DIALECT_V5; *************** *** 650,654 **** sw_trace = TRUE; break; ! default: break; --- 664,671 ---- sw_trace = TRUE; break; ! /* FSG 14.Nov.2000 */ ! case IN_SW_GPRE_VERBOSE : ! sw_verbose = TRUE; ! break; default: break; *************** *** 1762,1770 **** * **************************************/ if (input_char != input_buffer) return (int) *--input_char; else ! return ib_getc (file); } --- 1779,1805 ---- * **************************************/ + USHORT pc; + if (input_char != input_buffer) + { return (int) *--input_char; + + } else ! { ! ! pc=ib_getc (file); ! ! /* Dump this char to stderr, so we can see ! what input line will cause this ugly ! core dump. ! FSG 14.Nov.2000 */ ! if (sw_verbose) ! ib_fprintf (ib_stderr, "%c",pc); ! return pc; ! } ! ! } *************** *** 2515,2518 **** --- 2550,2557 ---- SLONG start; + /* FSG 14.Nov.2000 */ + if (sw_verbose) + ib_fprintf (ib_stderr, "*********************** PASS 1 ***************************\n"); + while (CPR_token()) while (token.tok_symbol) *************** *** 2595,2598 **** --- 2634,2641 ---- c = 0; + /* FSG 14.Nov.2000 */ + if (sw_verbose) + ib_fprintf (ib_stderr, "*********************** PASS 2 ***************************\n"); + suppress_output = FALSE; sw_block_comments = sw_language == lan_c || Index: gpre.h =================================================================== RCS file: /cvsroot/firebird/interbase/gpre/gpre.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** gpre.h 2000/08/03 20:44:04 1.1.1.1 --- gpre.h 2000/11/16 15:54:29 1.2 *************** *** 20,23 **** --- 20,36 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/16 15:54:29 fsg + * Added new switch -verbose to gpre that will dump + * parsed lines to stderr + * + * Fixed gpre bug in handling row names in WHERE clauses + * that are reserved words now (DATE etc) + * (this caused gpre to dump core when parsing tan.e) + * + * Fixed gpre bug in handling lower case table aliases + * in WHERE clauses for sql dialect 2 and 3. + * (cause a core dump in a test case from C.R. Zamana) + * */ *************** *** 1406,1411 **** #define EXTERN extern #endif ! EXTERN USHORT sw_auto, sw_sql, sw_gen_sql, sw_raw, sw_cstring, sw_dsql, sw_dyn_using, sw_ada, sw_standard_out, sw_ansi, sw_lines, sw_ids, sw_trace, sw_case, sw_external, sw_pyxis, --- 1419,1427 ---- #define EXTERN extern #endif + + /* Added sw_verbose + FSG 14.Nov.2000 */ ! EXTERN USHORT sw_verbose,sw_auto, sw_sql, sw_gen_sql, sw_raw, sw_cstring, sw_dsql, sw_dyn_using, sw_ada, sw_standard_out, sw_ansi, sw_lines, sw_ids, sw_trace, sw_case, sw_external, sw_pyxis, Index: gpreswi.h =================================================================== RCS file: /cvsroot/firebird/interbase/gpre/gpreswi.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** gpreswi.h 2000/08/03 20:44:04 1.1.1.1 --- gpreswi.h 2000/11/16 15:54:29 1.2 *************** *** 20,23 **** --- 20,36 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/16 15:54:29 fsg + * Added new switch -verbose to gpre that will dump + * parsed lines to stderr + * + * Fixed gpre bug in handling row names in WHERE clauses + * that are reserved words now (DATE etc) + * (this caused gpre to dump core when parsing tan.e) + * + * Fixed gpre bug in handling lower case table aliases + * in WHERE clauses for sql dialect 2 and 3. + * (cause a core dump in a test case from C.R. Zamana) + * */ *************** *** 71,78 **** #define IN_SW_GPRE_INTERP 29 /* default character set/collation */ ! #define IN_SW_GPRE_COUNT 30 /* number of IN_SW values */ ! #define IN_SW_GPRE_CPLUSPLUS 31 /* source is platform dependant C++ */ ! #define IN_SW_GPRE_SQLDIALECT 32 /* SQL dialect passed */ static struct in_sw_tab_t gpre_in_sw_table [] = { #ifdef ADA --- 84,102 ---- #define IN_SW_GPRE_INTERP 29 /* default character set/collation */ ! #define IN_SW_GPRE_CPLUSPLUS 30 /* source is platform dependant C++ */ ! #define IN_SW_GPRE_SQLDIALECT 31 /* SQL dialect passed */ + /* Added this to let gpre dump the lines that it is parsing to stderr + FSG 14.Nov.2000 + */ + #define IN_SW_GPRE_VERBOSE 32 + + /* As mentioned above: This should always be one larger than the largest + switch value. + FSG 14.Nov.2000 + */ + + #define IN_SW_GPRE_COUNT 33 /* number of IN_SW values */ + static struct in_sw_tab_t gpre_in_sw_table [] = { #ifdef ADA *************** *** 111,114 **** --- 135,140 ---- IN_SW_GPRE_T, 0, "TRACE", 0, 0, 0, FALSE, 0, 0, NULL, IN_SW_GPRE_USER, 0, "USER", 0, 0, 0, FALSE, 0, 0, "\t\tdefault user name", + /* FSG 14.Nov.2000 */ + IN_SW_GPRE_VERBOSE, 0, "VERBOSE", 0, 0, 0, FALSE, 0, 0, "\t\tVerbose Output to stderr", #ifdef VMS IN_SW_GPRE_X, 0, "EXTERNAL", 0, 0, 0, FALSE, 0, 0, "\t\tEXTERNAL database (used with /DATABASE)", Index: sqe.c =================================================================== RCS file: /cvsroot/firebird/interbase/gpre/sqe.c,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** sqe.c 2000/08/26 08:06:46 1.2 --- sqe.c 2000/11/16 15:54:29 1.3 *************** *** 20,25 **** * All Rights Reserved. * Contributor(s): ______________________________________. */ ! #include <string.h> #include "../gpre/gpre.h" --- 20,38 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.3 2000/11/16 15:54:29 fsg + * Added new switch -verbose to gpre that will dump + * parsed lines to stderr + * + * Fixed gpre bug in handling row names in WHERE clauses + * that are reserved words now (DATE etc) + * (this caused gpre to dump core when parsing tan.e) + * + * Fixed gpre bug in handling lower case table aliases + * in WHERE clauses for sql dialect 2 and 3. + * (cause a core dump in a test case from C.R. Zamana) + * */ ! #include <stdio.h> #include <string.h> #include "../gpre/gpre.h" *************** *** 1219,1223 **** MATCH (KW_PLUS); node = par_multiply (request, aster_ok, paren_count, bool_flag); ! if (node->nod_type == nod_asterisk) { --- 1232,1236 ---- MATCH (KW_PLUS); node = par_multiply (request, aster_ok, paren_count, bool_flag); ! assert_IS_NOD (node); if (node->nod_type == nod_asterisk) { *************** *** 2262,2285 **** assert_IS_REQ (request); - node = par_primitive_value (request, aster_ok, paren_count, bool_flag); ! ! if (node->nod_type == nod_asterisk) ! return node; ! if (KEYWORD (KW_COLLATE)) ! return par_collate (request, node); ! while (TRUE) ! { ! if (MATCH (KW_ASTERISK)) ! operator = nod_times; ! else if (MATCH (KW_SLASH)) ! operator = nod_divide; ! else ! return node; ! arg = node; ! node = MSC_binary (operator, arg, par_primitive_value (request, FALSE, paren_count, bool_flag)); ! } } --- 2275,2296 ---- assert_IS_REQ (request); node = par_primitive_value (request, aster_ok, paren_count, bool_flag); ! if (node->nod_type == nod_asterisk) ! return node; ! if (KEYWORD (KW_COLLATE)) ! return par_collate (request, node); ! while (TRUE) ! { ! if (MATCH (KW_ASTERISK)) ! operator = nod_times; ! else if (MATCH (KW_SLASH)) ! operator = nod_divide; ! else ! return node; ! arg = node; ! node = MSC_binary (operator, arg, par_primitive_value (request, FALSE, paren_count, bool_flag)); ! } } *************** *** 2641,2644 **** --- 2652,2657 ---- assert_IS_REQ (request); + node = FALSE; + if (!paren_count) { *************** *** 2753,2765 **** } ! /** Begin date/time/timestamp support **/ ! kw_word = token.tok_keyword; ! if (MATCH(KW_DATE) || MATCH(KW_TIME) || MATCH(KW_TIMESTAMP)) ! { ! token.tok_keyword = kw_word; ! node = EXP_literal(); ! return node; ! } ! /** End date/time/timestamp support **/ /* If the next token is a colon, it is a variable reference */ --- 2766,2774 ---- } ! /* moved this timestamp support down some lines, because it caused ! gpre to segfault when it was done here. ! FSG 15.Nov.2000 ! */ ! /* If the next token is a colon, it is a variable reference */ *************** *** 2783,2789 **** } - /* Must be a field or a udf. If there is a map, post the field to it. */ ! node = par_udf_or_field (request, aster_ok); /* --- 2792,2799 ---- } ! ! /* Must be a field or a udf. If there is a map, post the field to it. */ ! node= par_udf_or_field (request, aster_ok); /* *************** *** 2792,2795 **** --- 2802,2823 ---- */ + if (!node) + /* I don't know what it's good for, but let's try it anyway if we haven't found + anything that makes sense until now */ + { + /** Begin date/time/timestamp support **/ + kw_word = token.tok_keyword; + + if (MATCH(KW_DATE) || MATCH(KW_TIME) || MATCH(KW_TIMESTAMP)) + { + token.tok_keyword = kw_word; + node = EXP_literal(); + return node; + } + + /** End date/time/timestamp support **/ + + } + return node; } *************** *** 3729,3735 **** symbol = HSH_lookup (q_token->tok_string); ! if ( (symbol == NULL) && (sw_case || sw_sql_dialect == SQL_DIALECT_V5)) symbol = HSH_lookup2 (q_token->tok_string); ! for (temp_symbol = symbol; temp_symbol; temp_symbol = temp_symbol->sym_homonym) { --- 3757,3776 ---- symbol = HSH_lookup (q_token->tok_string); ! ! /* This caused gpre to dump core if there are lower case ! table aliases in a where clause used with dialect 2 or 3 ! ! if ( (symbol == NULL)&& (sw_case || sw_sql_dialect == SQL_DIALECT_V5)) symbol = HSH_lookup2 (q_token->tok_string); ! */ ! ! /* So I replaced it with the following, don't know ! why we don't do a HSH_lookup2 in any case, but so it may be. ! FSG 16.Nov.2000 ! */ ! if ( (symbol == NULL)) ! symbol = HSH_lookup2 (q_token->tok_string); ! ! for (temp_symbol = symbol; temp_symbol; temp_symbol = temp_symbol->sym_homonym) { |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-14 15:36:45
|
Update of /cvsroot/firebird/TCS/tcs/tcs In directory slayer.i.sourceforge.net:/tmp/cvs-serv22350/TCS/tcs/tcs Modified Files: makefile.linux tan.e Log Message: Found a way to reenable list_runs in tan.e without causing gpre to dump core Index: makefile.linux =================================================================== RCS file: /cvsroot/firebird/TCS/tcs/tcs/makefile.linux,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** makefile.linux 2000/11/11 15:45:06 1.2 --- makefile.linux 2000/11/14 15:36:38 1.3 *************** *** 15,19 **** # # Contributor(s): ______________________________________. ! # $Id$ .SUFFIXES: .c .e .gdb .gdl .e.c : --- 15,22 ---- # # Contributor(s): ______________________________________. ! # $Log$ ! # Revision 1.3 2000/11/14 15:36:38 fsg ! # Found a way to reenable list_runs in tan.e without causing gpre to dump core ! # .SUFFIXES: .c .e .gdb .gdl .e.c : *************** *** 22,27 **** gdef $< ! TARGETS= tcs # removed tan temporarily FSG 11.Nov.2000 # Purify related flags --- 25,31 ---- gdef $< ! TARGETS= tcs tan # removed tan temporarily FSG 11.Nov.2000 + # as it compiles now I have added it again FSG 14.Nov:2000 # Purify related flags Index: tan.e =================================================================== RCS file: /cvsroot/firebird/TCS/tcs/tcs/tan.e,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** tan.e 2000/11/14 13:22:05 1.2 --- tan.e 2000/11/14 15:36:38 1.3 *************** *** 21,24 **** --- 21,27 ---- * Contributor(s): ______________________________________. * $Log$ + * Revision 1.3 2000/11/14 15:36:38 fsg + * Found a way to reenable list_runs in tan.e without causing gpre to dump core + * * Revision 1.2 2000/11/14 13:22:05 fsg * Changes to get tan compiled, not very useful at the moment *************** *** 2141,2151 **** */ ! /* gpre doesn't like the aggregate functions, ! * so don't do it until gpre is fixed ! * FSG 14.Nov.2000 EXEC SQL DECLARE LR CURSOR FOR ! SELECT RUN, COUNT(*), MAX(DATE), MIN(DATE) FROM LTCS.FAILURES WHERE RUN LIKE :input_pattern --- 2144,2154 ---- */ ! /* We need to quote DATE in this to ! prevent gpre from segfaulting ! FSG 14.Nov.2000*/ EXEC SQL DECLARE LR CURSOR FOR ! SELECT RUN, COUNT(*), MAX("DATE"), MIN("DATE") FROM LTCS.FAILURES WHERE RUN LIKE :input_pattern *************** *** 2174,2178 **** EXEC SQL CLOSE LR; ! */ /* Close does not drop the request handle, so we drop it here. * Note that this depends on this SQL cursor being the only --- 2177,2181 ---- EXEC SQL CLOSE LR; ! /* Close does not drop the request handle, so we drop it here. * Note that this depends on this SQL cursor being the only *************** *** 2180,2189 **** * request handle stashed away in dbb */ ! /*RELEASE_REQUESTS FOR LTCS; if (!count) fprintf (output, "No runs showing failures on %s/%s\n", dbb->dbb_system, dbb->dbb_platform); ! */ return TRUE; } --- 2183,2192 ---- * request handle stashed away in dbb */ ! /*RELEASE_REQUESTS FOR LTCS;*/ if (!count) fprintf (output, "No runs showing failures on %s/%s\n", dbb->dbb_system, dbb->dbb_platform); ! return TRUE; } |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-14 13:22:09
|
Update of /cvsroot/firebird/TCS/tcs/tcs In directory slayer.i.sourceforge.net:/tmp/cvs-serv7705/TCS/tcs/tcs Modified Files: tan.e Added Files: common.h time.h Log Message: Changes to get tan compiled, not very useful at the moment ***** Error reading new file: (2, 'No such file or directory') ***** Error reading new file: (2, 'No such file or directory') Index: tan.e =================================================================== RCS file: /cvsroot/firebird/TCS/tcs/tcs/tan.e,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** tan.e 2000/11/11 10:25:57 1.1.1.1 --- tan.e 2000/11/14 13:22:05 1.2 *************** *** 20,34 **** * * Contributor(s): ______________________________________. */ #include <stdio.h> #include <stdlib.h> #include <signal.h> #include <string.h> #include <sys/stat.h> ! /************************* ! #include "../jrd/common.h" ! #include "../jrd/time.h" ! *************************/ #ifdef VERSION_33 --- 20,39 ---- * * Contributor(s): ______________________________________. + * $Log$ + * Revision 1.2 2000/11/14 13:22:05 fsg + * Changes to get tan compiled, not very useful at the moment + * */ #include <stdio.h> + #include <ctype.h> #include <stdlib.h> #include <signal.h> #include <string.h> #include <sys/stat.h> ! /* seems these are needed to compile */ ! #include <gds.h> ! #include "common.h" ! #include "time.h" #ifdef VERSION_33 *************** *** 297,303 **** else #if (defined apollo || defined WIN_NT || defined OS2_ONLY) ! db_name = "/gds/corporate/databases/rollup.gdb"; #else ! db_name = "/usr/gds/corporate/databases/rollup.gdb"; #endif --- 302,308 ---- else #if (defined apollo || defined WIN_NT || defined OS2_ONLY) ! db_name = "./tests/rollup.gdb"; #else ! db_name = "./tests/rollup.gdb"; #endif *************** *** 1555,1564 **** #ifdef apollo ! gdb_name = "/gds/tests/gtcs.gdb"; #else #if (defined WIN_NT || defined OS2_ONLY) ! gdb_name = "jedi:/usr/gds/tests/gtcs.gdb"; #else ! gdb_name = "/usr/gds/tests/gtcs.gdb"; #endif #endif --- 1560,1569 ---- #ifdef apollo ! gdb_name = "./tests/gtcs.gdb"; #else #if (defined WIN_NT || defined OS2_ONLY) ! gdb_name = "./tests/gtcs.gdb"; #else ! gdb_name = "./tests/gtcs.gdb"; #endif #endif *************** *** 2106,2109 **** --- 2111,2115 ---- /* Lookup database/test */ + /* WILL DO NOTHING UNTIL gpre IS FIXED if (args == 0) *************** *** 2125,2128 **** --- 2131,2136 ---- input_pattern, version, current_platform->dbb_system); + */ + /* This kind of fetch is easier to do in SQL than in GDML - * so we now have a mixed mode program. Note that SQL doesn't *************** *** 2132,2137 **** * once and then we change databases. */ EXEC SQL DECLARE LR CURSOR FOR ! SELECT RUN, COUNT(*), MAX(DATE), MIN(DATE) FROM LTCS.FAILURES WHERE RUN LIKE :input_pattern --- 2140,2151 ---- * once and then we change databases. */ + + /* gpre doesn't like the aggregate functions, + * so don't do it until gpre is fixed + * FSG 14.Nov.2000 + + EXEC SQL DECLARE LR CURSOR FOR ! SELECT RUN, COUNT(*), MAX(DATE), MIN(DATE) FROM LTCS.FAILURES WHERE RUN LIKE :input_pattern *************** *** 2160,2164 **** EXEC SQL CLOSE LR; ! /* Close does not drop the request handle, so we drop it here. * Note that this depends on this SQL cursor being the only --- 2174,2178 ---- EXEC SQL CLOSE LR; ! */ /* Close does not drop the request handle, so we drop it here. * Note that this depends on this SQL cursor being the only *************** *** 2166,2175 **** * request handle stashed away in dbb */ ! RELEASE_REQUESTS FOR LTCS; if (!count) fprintf (output, "No runs showing failures on %s/%s\n", dbb->dbb_system, dbb->dbb_platform); ! return TRUE; } --- 2180,2189 ---- * request handle stashed away in dbb */ ! /*RELEASE_REQUESTS FOR LTCS; if (!count) fprintf (output, "No runs showing failures on %s/%s\n", dbb->dbb_system, dbb->dbb_platform); ! */ return TRUE; } *************** *** 3339,3343 **** STORE (TRANSACTION_HANDLE rollup_trans) NEW IN DB.FAILURES NEW.DATE = FAILURE.DATE; ! (NEW.DATE).gds_quad_low = 0; strcpy (NEW.TEST_NAME, FAILURE.TEST_NAME); strcpy (NEW.SYSTEM, dbb->dbb_system); --- 3353,3357 ---- STORE (TRANSACTION_HANDLE rollup_trans) NEW IN DB.FAILURES NEW.DATE = FAILURE.DATE; ! /* (NEW.DATE).gds_quad_low = 0;*/ strcpy (NEW.TEST_NAME, FAILURE.TEST_NAME); strcpy (NEW.SYSTEM, dbb->dbb_system); |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-12 11:46:04
|
Update of /cvsroot/firebird/TCS/tcs/tcs In directory slayer.i.sourceforge.net:/tmp/cvs-serv11971/TCS/tcs/tcs Modified Files: exec.e Log Message: added some comments and removed unneeded code Index: exec.e =================================================================== RCS file: /cvsroot/firebird/TCS/tcs/tcs/exec.e,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** exec.e 2000/11/12 09:35:25 1.2 --- exec.e 2000/11/12 11:46:01 1.3 *************** *** 20,23 **** --- 20,24 ---- * * Contributor(s): ______________________________________. + * $Id$ */ *************** *** 1081,1085 **** * Return identical (TRUE) or difference * (FALSE). ! * **************************************/ FILE *file,*blob_file; --- 1082,1090 ---- * Return identical (TRUE) or difference * (FALSE). ! * I have changed this to compare ! * two files instead of a blob ! * and a file to be able to use ! * blobs with any segment length ! * FSG 12.Nov.2000 **************************************/ FILE *file,*blob_file; *************** *** 1251,1254 **** --- 1256,1260 ---- + /* Dump the initialization to file */ if (!global) BLOB_TEXT_DUMP (blob_id, TCS, gds__trans, compare_file); *************** *** 1256,1261 **** BLOB_TEXT_DUMP (blob_id, TCS_GLOBAL, gds__trans, compare_file); - if (!compare (compare_file, output_file, global)) --- 1262,1267 ---- BLOB_TEXT_DUMP (blob_id, TCS_GLOBAL, gds__trans, compare_file); + /* and compare it with the test output */ if (!compare (compare_file, output_file, global)) *************** *** 1267,1274 **** /* If not global then dump the initialization to the compare_file */ ! if (!global) ! BLOB_TEXT_DUMP (blob_id, TCS, gds__trans, compare_file); ! else ! BLOB_TEXT_DUMP (blob_id, TCS_GLOBAL, gds__trans, compare_file); /* Call do_diffs which is linked in at compile time, in order to * --- 1273,1283 ---- /* If not global then dump the initialization to the compare_file */ ! /* As we have done this previously, this isn't necessary anymore */ ! ! /* if (!global) ! * BLOB_TEXT_DUMP (blob_id, TCS, gds__trans, compare_file); ! * else ! * BLOB_TEXT_DUMP (blob_id, TCS_GLOBAL, gds__trans, compare_file); ! */ /* Call do_diffs which is linked in at compile time, in order to * |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-12 10:20:00
|
Update of /cvsroot/firebird/TCS/tcs/scripts In directory slayer.i.sourceforge.net:/tmp/cvs-serv7241/TCS/tcs/scripts Modified Files: runtcs Added Files: .tcs_config Log Message: added missing and changed files from my TCS-installation --- NEW FILE --- svr 6.0 sb bp_fb se qa_fb srn Firebird Index: runtcs =================================================================== RCS file: /cvsroot/firebird/TCS/tcs/scripts/runtcs,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** runtcs 2000/11/11 10:25:50 1.1.1.1 --- runtcs 2000/11/12 10:19:57 1.2 *************** *** 31,45 **** rm -f *.tmp INTERBASE=/opt/interbase - export INTERBASE ! PATH=$INTERBASE/bin:$PATH export PATH ! LD_LIBRARY_PATH=/usr/lib export LD_LIBRARY_PATH ! SHLIB_PATH=/usr/lib export SHLIB_PATH ! LD_RUN_PATH=/usr/lib:$TEST_DIR export LD_RUN_PATH --- 31,46 ---- rm -f *.tmp + #EDITOR="joe -nobackup" + #export EDITOR INTERBASE=/opt/interbase ! PATH=./bin:$INTERBASE/bin:$PATH export PATH ! LD_LIBRARY_PATH=/usr/lib:./bin export LD_LIBRARY_PATH ! SHLIB_PATH=/usr/lib:./bin export SHLIB_PATH ! LD_RUN_PATH=/usr/lib:$TEST_DIR:./bin export LD_RUN_PATH *************** *** 53,56 **** --- 54,59 ---- $INTERBASE/bin/gsec -delete qa_user4 $INTERBASE/bin/gsec -delete qa_user5 + + $INTERBASE/bin/gsec -add qa_user1 -pw qa_user1 $INTERBASE/bin/gsec -add qa_user2 -pw qa_user2 *************** *** 58,61 **** --- 61,65 ---- $INTERBASE/bin/gsec -add qa_user4 -pw qa_user4 $INTERBASE/bin/gsec -add qa_user5 -pw qa_user5 + # test v4_api15 $INTERBASE/bin/gsec -delete guest *************** *** 121,123 **** export SERVICE_MGR ! tcs --- 125,127 ---- export SERVICE_MGR ! tcs $1 |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-12 09:35:29
|
Update of /cvsroot/firebird/TCS/tcs/tcs In directory slayer.i.sourceforge.net:/tmp/cvs-serv3374/TCS/tcs/tcs Modified Files: exec.e Log Message: changes in exec.e to handle blobs with any seg_size Index: exec.e =================================================================== RCS file: /cvsroot/firebird/TCS/tcs/tcs/exec.e,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** exec.e 2000/11/11 10:25:53 1.1.1.1 --- exec.e 2000/11/12 09:35:25 1.2 *************** *** 28,32 **** #include <time.h> #include "tcs.h" ! #define OLD_STYLE_DIFF extern USHORT sw_ignore_init,sw_quiet,sw_save,sw_times,quit; --- 28,32 ---- #include <time.h> #include "tcs.h" ! #undef OLD_STYLE_DIFF extern USHORT sw_ignore_init,sw_quiet,sw_save,sw_times,quit; *************** *** 772,776 **** * **************************************/ ! FILE *file; STATUS status_vector [20]; ULONG *blob; --- 772,776 ---- * **************************************/ ! FILE *file,*blob_file; STATUS status_vector [20]; ULONG *blob; *************** *** 786,789 **** --- 786,792 ---- * local DB. */ + + + if (!global) *************** *** 1063,1071 **** #else /* !OLD_STYLE_DIFF */ static compare_initialized (blob_id, test_name, run_name, global, version) ! ULONG *blob_id; ! TEXT *test_name, *run_name; ! SSHORT global; ! TEXT *version; { /************************************** --- 1066,1233 ---- #else /* !OLD_STYLE_DIFF */ + static compare (compare_file, output_file, global) + TEXT *compare_file; + TEXT *output_file; + SSHORT global; + { + /************************************** + * + * c o m p a r e + * + ************************************** + * + * Functional description + * Do a quick compare of two files. + * Return identical (TRUE) or difference + * (FALSE). + * + **************************************/ + FILE *file,*blob_file; + STATUS status_vector [20]; + ULONG *blob; + TEXT f_buff [2048], b_buff [2048], *p, *q, c, lastc; + USHORT eof_blob, eof_file; + + /* Check to make sure an output file exists. */ + + if (!(file = fopen (output_file, FOPEN_READ_TYPE))) + return FALSE; + + if (!(blob_file = fopen (compare_file, FOPEN_READ_TYPE))) + return FALSE; + + do + { + eof_blob = next_line (blob_file, b_buff, sizeof (b_buff)); + eof_file = next_line (file, f_buff, sizeof (f_buff)); + if (eof_blob || eof_file) + break; + + + /* Map multiple white space characters to single spaces */ + p = q = f_buff; + lastc = 0; + + while (c = *p++) + + { + if (c == '\t') + c = ' '; + if (c != ' ' || lastc != ' ') + lastc = *q++ = c; + } + + if (q != f_buff && *q == '\n') + q--; + if (q != f_buff && *q == ' ') + q--; + *q = 0; + + /* Map multiple white space characters to single spaces */ + p = q = b_buff; + lastc = 0; + + while (c = *p++) + + { + if (c == '\t') + c = ' '; + if (c != ' ' || lastc != ' ') + lastc = *q++ = c; + } + + if (q != b_buff && *q == '\n') + q--; + if (q != b_buff && *q == ' ') + q--; + *q = 0; + + /* Scan the lines for a difference */ + for (p = f_buff, q = b_buff; *p && *p == *q; p++, q++) + continue; + + if (*p != *q) + { + /* Difference found - check for trivial difference */ + char *head1, + *head2, + *tail1, + *tail2; + + /* if the lines both have a ".gdb" this ignore anything that + * "looks like" a filename + * Note that some platforms have only UPCASE filenames + * This will fail for any lines that have TWO filenames on them. + * + * Added 24-Jan-96: Remove .dat, .gbk from files as well + */ + + if (((tail1 = (char*)strstr(f_buff, ".gdb")) || + (tail1 = (char*)strstr(f_buff, ".gbk")) || + (tail1 = (char*)strstr(f_buff, ".GBK")) || + (tail1 = (char*)strstr(f_buff, ".dat")) || + (tail1 = (char*)strstr(f_buff, ".DAT")) || + (tail1 = (char*)strstr(f_buff, ".GDB"))) + && + ((tail2 = (char*)strstr(b_buff, ".gdb")) || + (tail2 = (char*)strstr(b_buff, ".gbk")) || + (tail2 = (char*)strstr(b_buff, ".GBK")) || + (tail2 = (char*)strstr(b_buff, ".dat")) || + (tail2 = (char*)strstr(b_buff, ".DAT")) || + (tail2 = (char*)strstr(b_buff, ".GDB")))) + { + + head1 = tail1; + head2 = tail2; + + #define FILECHAR(c) (((c) != ' ') && ((c) != '\'') && ((c) != '\"')) + + /* Backup to the first character that we're sure + * isn't a filename part */ + while (tail1 > f_buff && + FILECHAR (*(tail1-1))) + tail1--; + while (tail2 > b_buff && + FILECHAR (*(tail2-1))) + tail2--; + + /* Check from start of line to start of filename */ + if ((tail1 - f_buff) != (tail2 - b_buff)) + goto have_difference; + + if (strncmp (f_buff, b_buff, (tail1 - f_buff))) + goto have_difference; + + /* Scan past the .GDB extension & anything that follows + * that "looks like" a filename part. + */ + while (*head1 && + FILECHAR (*head1)) + head1++; + while (*head2 && + FILECHAR (*head2)) + head2++; + + /* Check from end of filename to end of line */ + for (p = head1, q = head2; + *p && *q && *p == *q; + p++, q++) + continue; + } + } + } while (*p == *q); + + have_difference: + + fclose (file); + fclose (blob_file); + return (eof_blob && eof_file) ? TRUE : FALSE; + } + static compare_initialized (blob_id, test_name, run_name, global, version) ! ULONG *blob_id; ! TEXT *test_name, *run_name; ! SSHORT global; ! TEXT *version; { /************************************** *************** *** 1080,1103 **** * **************************************/ ! USHORT count, result; TEST_RESULT test_result; - TEXT script_name [32], command [128]; test_result = passed; if (!global) BLOB_TEXT_DUMP (blob_id, TCS, gds__trans, compare_file); else BLOB_TEXT_DUMP (blob_id, TCS_GLOBAL, gds__trans, compare_file); ! result = do_diffs (compare_file, output_file, diff_file, 0, 0, 0); ! if (!result) { ! printf ("passed\n"); ! } else { ! test_result = failed; ! printf ("*** failed ****\n"); ! STORE F IN TCS.FAILURES USING gds__vtov (test_name, F.TEST_NAME, sizeof (F.TEST_NAME)); gds__vtov (version, F.VERSION, sizeof (F.VERSION)); --- 1242,1285 ---- * **************************************/ ! USHORT result; TEST_RESULT test_result; test_result = passed; + /* Check to see if the test passed. If it didn't then store the * + * diff of the expected result with the actual result in the DB */ + + if (!global) BLOB_TEXT_DUMP (blob_id, TCS, gds__trans, compare_file); else BLOB_TEXT_DUMP (blob_id, TCS_GLOBAL, gds__trans, compare_file); + + + + if (!compare (compare_file, output_file, global)) + + { + test_result = failed; ! printf ("*** failed ****\n"); ! /* If not global then dump the initialization to the compare_file */ ! if (!global) ! BLOB_TEXT_DUMP (blob_id, TCS, gds__trans, compare_file); ! else ! BLOB_TEXT_DUMP (blob_id, TCS_GLOBAL, gds__trans, compare_file); ! ! /* Call do_diffs which is linked in at compile time, in order to * ! * do the actual diff. Diff the expected result(compare_file) * ! * with the actual result(output_file) and put the diff in the * ! * diff_file. */ ! ! result = do_diffs (compare_file, output_file, diff_file, 0, 0, 0); ! ! /* Store the diff and output in the failure relation... */ ! ! STORE F IN TCS.FAILURES USING gds__vtov (test_name, F.TEST_NAME, sizeof (F.TEST_NAME)); gds__vtov (version, F.VERSION, sizeof (F.VERSION)); *************** *** 1108,1147 **** * NULL. */ ! if (NOT_NULL (run_name)) ! { ! gds__vtov (run_name, F.RUN, sizeof (F.RUN)); ! F.RUN.NULL = FALSE; ! } else ! F.RUN.NULL = TRUE; if (!disk_io_error) ! { ! store_blob (&F.DIFFERENCES, TCS, gds__trans, diff_file); ! F.DIFFERENCES.NULL = FALSE; ! } else ! F.DIFFERENCES.NULL = TRUE; /* Store the output in the failure relation. */ ! if (result > 0 && !disk_io_error) ! { ! BLOB_TEXT_LOAD (&F.OUTPUT, TCS, gds__trans, output_file); ! F.OUTPUT.NULL = FALSE; ! } else ! F.OUTPUT.NULL = TRUE; strcpy (F.DATE.CHAR[12], "NOW"); ! END_STORE; ! } ! if (!sw_save) { ! unlink (compare_file); ! unlink (diff_file); } commit_retaining(); ! return test_result; } #endif --- 1290,1356 ---- * NULL. */ ! if (NOT_NULL (run_name)) ! ! { ! gds__vtov (run_name, F.RUN, sizeof (F.RUN)); ! F.RUN.NULL = FALSE; ! } ! else ! F.RUN.NULL = TRUE; if (!disk_io_error) ! { ! store_blob (&F.DIFFERENCES, TCS, gds__trans, diff_file); ! F.DIFFERENCES.NULL = FALSE; ! } else ! F.DIFFERENCES.NULL = TRUE; /* Store the output in the failure relation. */ ! if (result && !disk_io_error) ! { ! BLOB_TEXT_LOAD (&F.OUTPUT, TCS, gds__trans, output_file); ! F.OUTPUT.NULL = FALSE; ! } else ! F.OUTPUT.NULL = TRUE; ! strcpy (F.DATE.CHAR[12], "NOW"); ! END_STORE; ! /* If we do not have to save the files -- the '-s' is not set * ! * then clean them up. */ ! ! if (!sw_save) ! ! { ! unlink (diff_file); ! } } + + /* The test passed! */ + + else + printf ("passed\n"); + + /* Commit */ + commit_retaining(); ! ! /* Clean up again if the '-s' flag is not set. */ ! ! if (!sw_save) ! ! { ! unlink (compare_file); ! unlink (script_file); ! unlink (output_file); } + + return (test_result); + } + #endif |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-11 15:45:10
|
Update of /cvsroot/firebird/TCS/tcs/tcs In directory slayer.i.sourceforge.net:/tmp/cvs-serv22358/TCS/tcs/tcs Modified Files: display.e makefile.linux Log Message: changes in display.e to handle blobs with any seg_size Index: display.e =================================================================== RCS file: /cvsroot/firebird/TCS/tcs/tcs/display.e,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** display.e 2000/11/11 10:25:52 1.1.1.1 --- display.e 2000/11/11 15:45:06 1.2 *************** *** 20,23 **** --- 20,24 ---- * * Contributor(s): ______________________________________. + * $Id$ */ *************** *** 25,29 **** #include <string.h> #include "tcs.h" ! #if (defined WIN_NT || defined OS2_ONLY) static ULONG *open_blob (SLONG* blob_id, SLONG* db_handle); --- 26,30 ---- #include <string.h> #include "tcs.h" ! #include <gds.h> #if (defined WIN_NT || defined OS2_ONLY) static ULONG *open_blob (SLONG* blob_id, SLONG* db_handle); *************** *** 288,292 **** --- 289,295 ---- if (!(blob = open_blob (blob_id, db_handle))) + { return TRUE; + } /* Loop through the blob for each segment, printing each segment * *************** *** 294,304 **** buf_len = sizeof (buffer) - 1; /* APOLLO cannot type cast const value */ ! while (!gds__get_segment (status_vector, GDS_REF (blob), GDS_REF (length), buf_len, /* SSHORT, not int. Andrew */ ! buffer)) ! { if (lines++ == 0) printf ("-------------------\n"); --- 297,320 ---- buf_len = sizeof (buffer) - 1; /* APOLLO cannot type cast const value */ ! ! /* I changed the following to handle blobs with segment_length > buf_len ! * though I don't know why we don't use BLOB_display directly ! * FSG 11.Nov.2000 */ ! ! ! for (;;) ! { ! gds__get_segment (status_vector, GDS_REF (blob), GDS_REF (length), buf_len, /* SSHORT, not int. Andrew */ ! buffer); ! if (status_vector [1] && status_vector [1] != gds__segment) ! { ! if (status_vector [1] != gds__segstr_eof) ! gds__print_status (status_vector); ! break; ! } if (lines++ == 0) printf ("-------------------\n"); *************** *** 306,309 **** --- 322,326 ---- fputs (buffer, stdout); } + /* Close the BLOB and clean up. */ Index: makefile.linux =================================================================== RCS file: /cvsroot/firebird/TCS/tcs/tcs/makefile.linux,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** makefile.linux 2000/11/11 10:25:54 1.1.1.1 --- makefile.linux 2000/11/11 15:45:06 1.2 *************** *** 15,18 **** --- 15,19 ---- # # Contributor(s): ______________________________________. + # $Id$ .SUFFIXES: .c .e .gdb .gdl .e.c : *************** *** 21,25 **** gdef $< ! TARGETS= tcs tan # Purify related flags --- 22,27 ---- gdef $< ! TARGETS= tcs ! # removed tan temporarily FSG 11.Nov.2000 # Purify related flags |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-11 10:26:07
|
Update of /cvsroot/firebird/TCS/tcs In directory slayer.i.sourceforge.net:/tmp/cvs-serv23123 Log Message: Import of TCS-source from Borland tree Status: Vendor Tag: BORLAND Release Tags: BORLAND_1_0 N TCS/tcs/diffs/do_diffs.c N TCS/tcs/diffs/README N TCS/tcs/diffs/diffs.c N TCS/tcs/diffs/diffs.h N TCS/tcs/diffs/link_diffs.com N TCS/tcs/diffs/makefile.aix N TCS/tcs/diffs/makefile.ao N TCS/tcs/diffs/makefile.apollo N TCS/tcs/diffs/makefile.dg N TCS/tcs/diffs/makefile.dg_x86 N TCS/tcs/diffs/makefile.hp300 N TCS/tcs/diffs/makefile.hp700 N TCS/tcs/diffs/makefile.linux N TCS/tcs/diffs/makefile.nt_bcc N TCS/tcs/diffs/makefile.nt_ms N TCS/tcs/diffs/makefile.oa N TCS/tcs/diffs/makefile.pipe N TCS/tcs/diffs/makefile.sco N TCS/tcs/diffs/makefile.sco_ev N TCS/tcs/diffs/makefile.solaris N TCS/tcs/diffs/makefile.sun N TCS/tcs/diffs/makefile.vms N TCS/tcs/doc/PORTABLE_TESTS N TCS/tcs/doc/QA_NON_C_LANGUAGES N TCS/tcs/doc/QA_TCS_QUICK_GUIDE N TCS/tcs/doc/QA_WRITING_TCS_TESTS N TCS/tcs/doc/TCS_Q_AND_A N TCS/tcs/doc/VECTOR_RUN_DOC N TCS/tcs/drop_gdb/drop.c N TCS/tcs/drop_gdb/makefile.linux N TCS/tcs/drop_gdb/makefile.nt_ms N TCS/tcs/drop_gdb/makefile.solaris N TCS/tcs/mu/client.h N TCS/tcs/mu/client_lib.c N TCS/tcs/mu/driver.c N TCS/tcs/mu/makefile.aix N TCS/tcs/mu/makefile.cobalt N TCS/tcs/mu/makefile.dg_x86 N TCS/tcs/mu/makefile.linux N TCS/tcs/mu/makefile.osf N TCS/tcs/mu/makefile.sco_ev N TCS/tcs/mu/makefile.solaris N TCS/tcs/mu/makefile.sun4 N TCS/tcs/mu/p1.e N TCS/tcs/mu/p2.e N TCS/tcs/mu/parser.c N TCS/tcs/mu/scheduler.c N TCS/tcs/mu/scheduler.h N TCS/tcs/mu/xxx.c N TCS/tcs/mu/yyy.c N TCS/tcs/mu/zzz.c N TCS/tcs/scripts/reset.tcs N TCS/tcs/scripts/runtcs N TCS/tcs/scripts/runvector N TCS/tcs/scripts/tcs_test.report N TCS/tcs/scripts/windows/CHK_ENV.KSH N TCS/tcs/scripts/windows/README N TCS/tcs/scripts/windows/TCS_CFG_ON_WINDOWS.txt N TCS/tcs/scripts/windows/bcc32.cfg N TCS/tcs/scripts/windows/bcc32.txt N TCS/tcs/scripts/windows/borlibs.rsp N TCS/tcs/scripts/windows/borlibs.txt N TCS/tcs/scripts/windows/compress.sed N TCS/tcs/scripts/windows/expand.sed N TCS/tcs/scripts/windows/fixed.sed N TCS/tcs/scripts/windows/gpre_d1.ksh N TCS/tcs/scripts/windows/ilink32.cfg N TCS/tcs/scripts/windows/ilink32.txt N TCS/tcs/scripts/windows/isql_d1.ksh N TCS/tcs/scripts/windows/profile.ksh N TCS/tcs/scripts/windows/save_config.ksh N TCS/tcs/scripts/windows/setup_config.ksh N TCS/tcs/scripts/windows/setup_profile.ksh N TCS/tcs/scripts/windows/tcs_cmd.ksh N TCS/tcs/scripts/windows/tcs_go.ksh N TCS/tcs/scripts/windows/tcscompress.ksh N TCS/tcs/scripts/windows/tcsexpand.ksh N TCS/tcs/scripts/windows/tcsrun.input N TCS/tcs/scripts/windows/tcsrun.ksh N TCS/tcs/scripts/windows/tlink32.cfg N TCS/tcs/scripts/windows/Etc.MKS/ENVIRON.KSH N TCS/tcs/scripts/windows/Etc.MKS/profile.ksh N TCS/tcs/tcs/display.e N TCS/tcs/tcs/README N TCS/tcs/tcs/gtcs.gdl N TCS/tcs/tcs/exec.e N TCS/tcs/tcs/ltcs.gdl N TCS/tcs/tcs/make_tcs.bat N TCS/tcs/tcs/makefile.ao N TCS/tcs/tcs/makefile.apollo N TCS/tcs/tcs/makefile.delta N TCS/tcs/tcs/makefile.dg N TCS/tcs/tcs/makefile.dg_x86 N TCS/tcs/tcs/makefile.hp10 N TCS/tcs/tcs/makefile.hp300 N TCS/tcs/tcs/makefile.hp700 N TCS/tcs/tcs/makefile.ia N TCS/tcs/tcs/makefile.imp N TCS/tcs/tcs/makefile.linux N TCS/tcs/tcs/makefile.m88k N TCS/tcs/tcs/makefile.nt_bcc N TCS/tcs/tcs/makefile.nt_ms N TCS/tcs/tcs/makefile.osf N TCS/tcs/tcs/makefile.pipe N TCS/tcs/tcs/makefile.ppc N TCS/tcs/tcs/makefile.sco N TCS/tcs/tcs/makefile.sgi N TCS/tcs/tcs/makefile.solaris N TCS/tcs/tcs/makefile.sun N TCS/tcs/tcs/makefile.vms N TCS/tcs/tcs/mpexl.h N TCS/tcs/tcs/pc.h N TCS/tcs/tcs/rollup.gdl N TCS/tcs/tcs/tan.e N TCS/tcs/tcs/tcs.e N TCS/tcs/tcs/tcs.h N TCS/tcs/tcs/trns.c N TCS/tcs/tcs/unix.h N TCS/tcs/tcs/upd_v38.gdl N TCS/tcs/tcs/vms.h No conflicts created by this import ***** Bogus filespec: - ***** Bogus filespec: Imported ***** Bogus filespec: sources |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-10 14:43:19
|
Update of /cvsroot/firebird/interbase/firebird/fsg/TCS In directory slayer.i.sourceforge.net:/tmp/cvs-serv17129/interbase/firebird/fsg/TCS Modified Files: dump_gtcs.pl fix_it.sql howto.txt import_all import_gtcs.pl Log Message: Changes to handle <null> values correctly Index: dump_gtcs.pl =================================================================== RCS file: /cvsroot/firebird/interbase/firebird/fsg/TCS/dump_gtcs.pl,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** dump_gtcs.pl 2000/11/07 16:04:07 1.3 --- dump_gtcs.pl 2000/11/10 14:43:13 1.4 *************** *** 162,166 **** foreach $Fields (@row) { ! if ($st->{Datatypes}[$i] eq 'BLOB') # Dump the blob to a file and print a reference --- 162,171 ---- foreach $Fields (@row) { ! if ($st->{Nulls}[$i]) ! { ! print OUT "<null>;"; ! } ! else ! { if ($st->{Datatypes}[$i] eq 'BLOB') # Dump the blob to a file and print a reference *************** *** 191,194 **** --- 196,200 ---- } print OUT "$Fields;"; + } } ++$i; Index: fix_it.sql =================================================================== RCS file: /cvsroot/firebird/interbase/firebird/fsg/TCS/fix_it.sql,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** fix_it.sql 2000/11/07 16:04:07 1.1 --- fix_it.sql 2000/11/10 14:43:13 1.2 *************** *** 1,10 **** set sql dialect 3; - update tests set EDIT_BY='NN' where EDIT_BY is null; update tests set "DATE"='01.01.80' where "DATE"<'01.01.80'; - update series_comment set EDIT_BY='NN' where EDIT_BY is null; - update series_comment set CREATED_BY='NN' where CREATED_BY is null; - update series_comment set "DATE"='01.01.80' where "DATE" is null; - update series_comment set EDIT_DATE='01.01.80' where EDIT_DATE is null; - commit; exit; --- 1,4 ---- Index: howto.txt =================================================================== RCS file: /cvsroot/firebird/interbase/firebird/fsg/TCS/howto.txt,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** howto.txt 2000/11/07 16:04:07 1.1 --- howto.txt 2000/11/10 14:43:13 1.2 *************** *** 4,8 **** database. ! This would make it possible to place the tests under cvs control. --- 4,8 ---- database. ! This would make it possible to place a test pool under cvs control. *************** *** 22,26 **** 5. If you like your newly created gtcs.gdb, copy it to ! your tests directory. --- 22,31 ---- 5. If you like your newly created gtcs.gdb, copy it to ! your tests directory. ! ! Sorry, at the moment the TCS will not work correctly ! with this new gtcs.gdb. I'm working on this. ! ! Frank Index: import_all =================================================================== RCS file: /cvsroot/firebird/interbase/firebird/fsg/TCS/import_all,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 Index: import_gtcs.pl =================================================================== RCS file: /cvsroot/firebird/interbase/firebird/fsg/TCS/import_gtcs.pl,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** import_gtcs.pl 2000/11/07 16:04:07 1.1 --- import_gtcs.pl 2000/11/10 14:43:13 1.2 *************** *** 69,76 **** { open(FILEHANDLE,"./export/global/$Field"); ! sysread(FILEHANDLE, @data[$i], 1000000); # @data[$i]='BLOB'; } ! # print "@data[$i], "; ++$i; } --- 69,80 ---- { open(FILEHANDLE,"./export/global/$Field"); ! sysread(FILEHANDLE, $data[$i], 1000000); # @data[$i]='BLOB'; } ! ! if ($Field eq '<null>') ! { ! $data[$i]=undef; ! } ++$i; } *************** *** 78,84 **** while ($i > @data) { ! @data=(@data,''); } - # print "\n"; if ($st->execute( @data ) < 0) { --- 82,87 ---- while ($i > @data) { ! @data=(@data,undef); } if ($st->execute( @data ) < 0) { |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-10 14:08:13
|
Update of /cvsroot/firebird/interbase/utilities In directory slayer.i.sourceforge.net:/tmp/cvs-serv13842/interbase/utilities Modified Files: guard.c ibmgr.c ibmgr.h ibmgrswi.h srvrmgr.c Log Message: Added -s switch to guardian to ignore startup errors and related changes to ibmgr and svrmgr Index: guard.c =================================================================== RCS file: /cvsroot/firebird/interbase/utilities/guard.c,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** guard.c 2000/10/16 16:09:48 1.2 --- guard.c 2000/11/10 14:08:07 1.3 *************** *** 16,24 **** * All Rights Reserved. * Contributor(s): ______________________________________. */ ! /* contains the main() and not shared routines for ibguard */ #define FOREVER 1 #define ONETIME 2 #define NORMAL_EXIT 0 --- 16,26 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Id$ */ ! /* contains the main() and not shared routines for ibguard */ #define FOREVER 1 #define ONETIME 2 + #define IGNORE 3 #define NORMAL_EXIT 0 *************** *** 82,87 **** option = ONETIME; break; default : ! ib_fprintf (ib_stderr, "Usage: %s [-onetime | -forever (default)]\n", prog_name); exit (-1); --- 84,92 ---- option = ONETIME; break; + case 'S': + option = IGNORE; + break; default : ! ib_fprintf (ib_stderr, "Usage: %s [-signore | -onetime | -forever (default)]\n", prog_name); exit (-1); *************** *** 151,156 **** prog_name, server_args [1] ? server_args [1] : SUPER_SERVER_BINARY, ret_code); ! done = TRUE; /* do not restart we have a startup problem */ ! } else --- 156,175 ---- prog_name, server_args [1] ? server_args [1] : SUPER_SERVER_BINARY, ret_code); ! if (option == IGNORE) ! { ! gds__log ("%s: %s terminated due to startup error (%d)\n Trying again\n", ! prog_name, server_args [1] ? server_args [1] : ! SUPER_SERVER_BINARY, ret_code); ! ! done = FALSE; /* Try it again, Sam (even if it is a startup error) FSG 8.11.2000*/ ! } ! else ! { ! gds__log ("%s: %s terminated due to startup error (%d)\n", ! prog_name, server_args [1] ? server_args [1] : ! SUPER_SERVER_BINARY, ret_code); ! ! done = TRUE; /* do not restart we have a startup problem */ ! } } else *************** *** 159,163 **** server_args [1] ? server_args [1] : SUPER_SERVER_BINARY, ret_code); ! if (option == FOREVER) done = FALSE; } --- 178,182 ---- server_args [1] ? server_args [1] : SUPER_SERVER_BINARY, ret_code); ! if (option == FOREVER || option == IGNORE) done = FALSE; } Index: ibmgr.c =================================================================== RCS file: /cvsroot/firebird/interbase/utilities/ibmgr.c,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** ibmgr.c 2000/10/16 16:09:48 1.2 --- ibmgr.c 2000/11/10 14:08:07 1.3 *************** *** 21,24 **** --- 21,25 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Id$ */ *************** *** 412,415 **** --- 413,417 ---- case IN_SW_IBMGR_ONCE: case IN_SW_IBMGR_FOREVER: + case IN_SW_IBMGR_SIGNORE: case IN_SW_IBMGR_SHUT: case IN_SW_IBMGR_NOW: *************** *** 605,608 **** --- 607,611 ---- case IN_SW_IBMGR_ONCE: case IN_SW_IBMGR_FOREVER: + case IN_SW_IBMGR_SIGNORE: case IN_SW_IBMGR_NOW: case IN_SW_IBMGR_NOAT: *************** *** 639,643 **** case IN_SW_IBMGR_ONCE: case IN_SW_IBMGR_FOREVER: ! if (ibmgr_data->operation != OP_START) { err_msg_no = MSG_INVSWOP; --- 642,647 ---- case IN_SW_IBMGR_ONCE: case IN_SW_IBMGR_FOREVER: ! case IN_SW_IBMGR_SIGNORE: ! if (ibmgr_data->operation != OP_START) { err_msg_no = MSG_INVSWOP; *************** *** 646,649 **** --- 650,655 ---- if (in_sw == IN_SW_IBMGR_ONCE) ibmgr_data->suboperation = SOP_START_ONCE; + else if (in_sw == IN_SW_IBMGR_SIGNORE) + ibmgr_data->suboperation = SOP_START_SIGNORE; else ibmgr_data->suboperation = SOP_START_FOREVER; *************** *** 796,800 **** ib_fprintf (OUTFILE, "or ibmgr<RETURN>\n"); ib_fprintf (OUTFILE, " IBMGR> command [-option [parameter]]\n\n"); ! ib_fprintf (OUTFILE, "Commands are: start [-once|-forever] start server\n"); ib_fprintf (OUTFILE, " shut [-now] shutdown server\n"); ib_fprintf (OUTFILE, " show show host and user\n"); --- 802,806 ---- ib_fprintf (OUTFILE, "or ibmgr<RETURN>\n"); ib_fprintf (OUTFILE, " IBMGR> command [-option [parameter]]\n\n"); ! ib_fprintf (OUTFILE, "Commands are: start [-once|-signore|-forever] start server\n"); ib_fprintf (OUTFILE, " shut [-now] shutdown server\n"); ib_fprintf (OUTFILE, " show show host and user\n"); *************** *** 806,810 **** ib_fprintf (OUTFILE, "as an option switches for commands like start or shut.\n"); ib_fprintf (OUTFILE, "For example, to shutdown server you can: \n\n"); ! ib_fprintf (OUTFILE, "ibmgr -shut -password <password>\n\ \n"); ib_fprintf (OUTFILE, "or\n\n"); ib_fprintf (OUTFILE, "ibmgr<RETURN>\n"); --- 812,816 ---- ib_fprintf (OUTFILE, "as an option switches for commands like start or shut.\n"); ib_fprintf (OUTFILE, "For example, to shutdown server you can: \n\n"); ! ib_fprintf (OUTFILE, "ibmgr -shut -password <password>\n\n"); ib_fprintf (OUTFILE, "or\n\n"); ib_fprintf (OUTFILE, "ibmgr<RETURN>\n"); Index: ibmgr.h =================================================================== RCS file: /cvsroot/firebird/interbase/utilities/ibmgr.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** ibmgr.h 2000/10/16 16:09:48 1.2 --- ibmgr.h 2000/11/10 14:08:07 1.3 *************** *** 20,23 **** --- 20,24 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Id$ */ *************** *** 74,78 **** #define SOP_SHUT_IGN 6 #define SOP_PRINT_POOL 7 ! /* Flags that are used in "par_entered" field of the IBMGR_DATA. --- 75,79 ---- #define SOP_SHUT_IGN 6 #define SOP_PRINT_POOL 7 ! #define SOP_START_SIGNORE 8 /* Flags that are used in "par_entered" field of the IBMGR_DATA. Index: ibmgrswi.h =================================================================== RCS file: /cvsroot/firebird/interbase/utilities/ibmgrswi.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** ibmgrswi.h 2000/08/03 20:54:27 1.1.1.1 --- ibmgrswi.h 2000/11/10 14:08:07 1.2 *************** *** 20,23 **** --- 20,24 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Id$ */ *************** *** 47,50 **** --- 48,52 ---- #define IN_SW_IBMGR_PRINT 17 /* Print Stats */ #define IN_SW_IBMGR_POOL 18 /* Print pool */ + #define IN_SW_IBMGR_SIGNORE 19 /* start server, restart when it dies, even if it was a start up error */ #define IN_SW_IBMGR_AMBIG 99 /* ambiguous switch */ *************** *** 54,57 **** --- 56,60 ---- IN_SW_IBMGR_ONCE, 0, "ONCE", 0, 0, 0, FALSE, 0, 1, NULL, /* start server once */ IN_SW_IBMGR_FOREVER, 0, "FOREVER", 0, 0, 0, FALSE, 0, 1, NULL, /* restart when server dies */ + IN_SW_IBMGR_SIGNORE, 0, "SIGNORE", 0, 0, 0, FALSE, 0, 1, NULL, /* dito, ignore start up error */ IN_SW_IBMGR_SHUT, 0, "SHUT", 0, 0, 0, FALSE, 0, 3, NULL, /* shutdown server */ IN_SW_IBMGR_NOW, 0, "NOW", 0, 0, 0, FALSE, 0, 3, NULL, /* immidiate shutdown */ Index: srvrmgr.c =================================================================== RCS file: /cvsroot/firebird/interbase/utilities/srvrmgr.c,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** srvrmgr.c 2000/08/03 20:54:29 1.1.1.1 --- srvrmgr.c 2000/11/10 14:08:07 1.2 *************** *** 21,24 **** --- 21,25 ---- * All Rights Reserved. * Contributor(s): ______________________________________. + * $Id$ */ *************** *** 486,489 **** --- 487,492 ---- if (data->suboperation == SOP_START_ONCE) argv[1] = "-o"; + else if (data->suboperation == SOP_START_SIGNORE) + argv[1] = "-s"; else argv[1] = "-f"; |
From: Frank Schlottmann-G. <fs...@us...> - 2000-11-07 16:04:12
|
Update of /cvsroot/firebird/interbase/firebird/fsg/TCS In directory slayer.i.sourceforge.net:/tmp/cvs-serv972/interbase/firebird/fsg/TCS Modified Files: dump_gtcs.pl Added Files: fix_it.sql gtcs.gdl howto.txt import_all import_gtcs.pl Log Message: Added some scripts to import and export test data --- NEW FILE --- set sql dialect 3; update tests set EDIT_BY='NN' where EDIT_BY is null; update tests set "DATE"='01.01.80' where "DATE"<'01.01.80'; update series_comment set EDIT_BY='NN' where EDIT_BY is null; update series_comment set CREATED_BY='NN' where CREATED_BY is null; update series_comment set "DATE"='01.01.80' where "DATE" is null; update series_comment set EDIT_DATE='01.01.80' where EDIT_DATE is null; commit; exit; --- NEW FILE --- define database "./import/gtcs.gdb" { Note: The definition for LTCS.GDB is a subset of the definition for GTCS.GDB. GTCS has the additional relation "AUDIT". 1995-January-26 David Schnepper } page_size 4096; /* Global Field Definitions */ define field BUG_NO short; define field CATEGORY varying [20]; define field COMMENT blob segment_length 80; define field COUNT short; define field CREATED_BY char [20]; define field DATE date; define field DIFFERENCES blob segment_length 80; define field EDIT_BY char [20]; define field EDIT_DATE date; define field FAIL_COUNT short; define field HOST_INFO char [60]; define field INIT_BY char [20]; define field INIT_DATE date edit_string "dd-mmm-yy"; define field META_SERIES_NAME varying [20]; define field NAME char [20]; define field NOTE blob segment_length 80; define field NO_INIT_FLAG short valid if (no_init_flag = 1 or no_init_flag = 0 or no_init_flag missing) missing_value is 0; define field NO_RUN_FLAG short; define field OUTPUT blob segment_length 80; define field PYXIS$FORM blob segment_length 80; define field PYXIS$FORM_NAME char [31]; define field PYXIS$FORM_TYPE char [16]; define field QLI$PROCEDURE blob segment_length 80 sub_type text system_flag 2; define field QLI$PROCEDURE_NAME char [31] system_flag 2; define field RDB$31 varying [10]; define field RDB$33 varying [10]; define field RDB$35 varying [10]; define field RDB$37 varying [10]; define field RESULT long; define field RUN char [20]; define field RUN_BY char [20]; define field RUN_DATE date; define field RUN_STOP date; define field SCRIPT blob segment_length 80; define field SEQUENCE short; define field SERIES_NAME char [20]; define field STATUS short; define field TEST_NAME varying [20]; define field TIME long; define field TIMESTAMP date; define field VERSION varying [8]; /* Relation Definitions */ define relation AUDIT TESTER based on NAME position 1, TEST_NAME based on NAME position 2 query_name NAME, RUN_NAME based on RUN position 3 query_name RUN, DATE position 5, HOST_INFO position 6, VERSION based on RDB$37 position 8; define relation BOILER_PLATE BOILER_PLATE_NAME based on NAME position 1 query_name NAME, SCRIPT position 2, CREATED_BY position 3, DATE position 4; define relation CATEGORIES CATEGORY position 1; define relation ENV ENV_NAME based on NAME position 1 query_name NAME, PROLOG based on SCRIPT position 2, EPILOG based on SCRIPT position 3, CREATED_BY position 4, DATE position 5; define relation FAILURES TEST_NAME based on NAME position 1 query_name NAME, RUN position 3, DATE position 4, OUTPUT position 5, DIFFERENCES position 6, ENV_NAME based on NAME position 7, BOILER_PLATE_NAME based on NAME position 8, RUN_BY position 9, VERSION based on RDB$33 position 11; define relation INIT TEST_NAME based on NAME position 1 query_name NAME, OUTPUT position 3, INIT_BY position 4, INIT_DATE position 5, BOILER_PLATE based on NAME position 6, ENV_NAME based on NAME position 7, VERSION based on RDB$35 position 9; define relation KNOWN_FAILURES TEST_NAME based on NAME position 1 query_name NAME, VERSION position 2, INIT_BY position 4, INIT_DATE position 5, BOILER_PLATE_NAME based on NAME position 6, ENV_NAME based on NAME position 7, STATUS position 8, BUG_NO position 9, COMMENT position 10, RUN position 11; define relation META_SERIES META_SERIES_NAME based on NAME position 1 query_name NAME, SERIES_NAME based on NAME position 2, SEQUENCE position 3; define relation META_SERIES_COMMENT META_SERIES_NAME based on NAME position 1 query_name NAME, COMMENT position 2, CREATED_BY position 3, DATE position 4, EDIT_BY position 5, EDIT_DATE position 6; define relation NOTES TEST_NAME based on NAME position 1 query_name NAME, NOTE position 2; define relation PYXIS$FORMS system_flag 2 PYXIS$FORM_NAME position 1, PYXIS$FORM_TYPE position 2, PYXIS$FORM position 3; define relation QLI$PROCEDURES system_flag 2 QLI$PROCEDURE_NAME position 0 system_flag 2, QLI$PROCEDURE position 1 system_flag 2; define relation SERIES SERIES_NAME based on NAME position 1 query_name NAME, TEST_NAME based on NAME position 2, CREATED_BY position 3, SEQUENCE position 3; define relation SERIES_COMMENT SERIES_NAME based on NAME position 1 query_name NAME, COMMENT position 2, CREATED_BY position 3, DATE position 4, EDIT_BY position 5, EDIT_DATE position 6; define relation TESTS TEST_NAME based on NAME position 1 query_name NAME, SCRIPT position 3, CATEGORY position 4, CREATED_BY position 5, DATE position 6, EDIT_BY position 7, EDIT_DATE position 8, NO_RUN_FLAG position 9, COMMENT position 10, VERSION based on RDB$31 position 12, NO_INIT_FLAG, CREATED_DATE date computed by (date); define relation TIMES TEST_NAME based on NAME position 1 query_name NAME, DATE position 2, TIME position 3; define relation WORKLIST SERIES_NAME based on NAME position 1, SEQUENCE position 2, STATUS position 3, MACHINE based on NAME position 4, START_TIME based on TIMESTAMP position 5, END_TIME based on TIMESTAMP position 6, PASSED based on RESULT position 7, FAILED based on RESULT position 8, NOT_RUN based on RESULT position 9, KILLED based on RESULT position 10, BOILER_PLATE_NAME based on NAME position 11, FAILED_KNOWN based on RESULT position 12, FAILED_UNINIT based on RESULT position 13, SKIPPED_FLAGGED based on RESULT position 14, SKIPPED_NOTFOUND based on RESULT position 15, CONFIGURATION based on CATEGORY position 16; /* Index Definitions */ define index AUDIT_1 for AUDIT TESTER, TEST_NAME; define index BP_1 for BOILER_PLATE unique BOILER_PLATE_NAME; define index ENV_1 for ENV unique ENV_NAME; define index FAILURES_1A for FAILURES TEST_NAME; define index FAILURES_2 for FAILURES RUN; define index INIT_1 for INIT unique TEST_NAME, VERSION; define index KNOWN_1 for KNOWN_FAILURES TEST_NAME; define index META_1 for META_SERIES unique META_SERIES_NAME, SERIES_NAME, SEQUENCE; define index NOTES_INDEX for NOTES TEST_NAME; define index QLI$PROCEDURES_IDX1 for QLI$PROCEDURES unique QLI$PROCEDURE_NAME; define index SERIES1 for SERIES SERIES_NAME; define index SERIES2 for SERIES TEST_NAME; define index CATEGORY for TESTS CATEGORY; define index TEST_1 for TESTS unique TEST_NAME, VERSION; define index WORKLIST_SEQUENCE for WORKLIST unique SEQUENCE; /* Add Security Classes to Defined Objects */ define trigger BOILER_PLATE$STORE for BOILER_PLATE pre store 0: begin if new.created_by MISSING new.created_by = rdb$user_name; if new.date MISSING new.date = 'now'; end; end_trigger; define trigger ENV$MODIFY for TESTS pre modify 0: begin new.edit_by = rdb$user_name; new.edit_date = 'now'; end; end_trigger; define trigger ENV$STORE for ENV pre store 0: begin if new.created_by MISSING new.created_by = rdb$user_name; if new.date MISSING new.date = 'now'; end; end_trigger; define trigger FAILURES$STORE for FAILURES pre store 0: new.run_by = rdb$user_name; end_trigger; define trigger INIT$MODIFY for INIT pre modify 0: if (new.init_date != old.init_date or new.init_date not missing and old.init_date missing) new.init_by = rdb$user_name; end_trigger; define trigger INIT$MODIFY2 for INIT pre modify 0: begin if (new.init_date MISSING) new.init_date = "NOW"; if (new.init_by missing) new.init_by = rdb$user_name; end end_trigger; define trigger INIT$STORE2 for INIT pre store 0: begin if (new.init_date MISSING) new.init_date = "NOW"; if (new.init_by missing) new.init_by = rdb$user_name; end end_trigger; define trigger KNOWN_FAILURES$MODIFY for KNOWN_FAILURES pre modify 0: begin if ((new.init_date != old.init_date) or (new.init_date not missing and old.init_date missing)) new.init_by = rdb$user_name; if new.init_date MISSING new.init_date = 'now'; if new.init_by MISSING new.init_by = rdb$user_name; end; end_trigger; define trigger KNOWN_FAILURES$STORE for KNOWN_FAILURES pre store 0: begin if new.init_by MISSING new.init_by = rdb$user_name; if new.init_date MISSING new.init_date = 'now'; end; end_trigger; define trigger TESTS$STORE for TESTS pre store 0: begin if new.created_by MISSING new.created_by = rdb$user_name; if new.date MISSING new.date = 'now'; end; end_trigger; ***** Error reading new file: (2, 'No such file or directory') ***** Error reading new file: (2, 'No such file or directory') ***** Error reading new file: (2, 'No such file or directory') Index: dump_gtcs.pl =================================================================== RCS file: /cvsroot/firebird/interbase/firebird/fsg/TCS/dump_gtcs.pl,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** dump_gtcs.pl 2000/11/06 15:14:03 1.2 --- dump_gtcs.pl 2000/11/07 16:04:07 1.3 *************** *** 3,7 **** # dump_gtcs.pl - dumps data from gtcs.gdb to disk. # ! # Copyright 2000 FSG. use IBPerl; --- 3,18 ---- # dump_gtcs.pl - dumps data from gtcs.gdb to disk. # ! # Copyright 2000 FSG ! # This is based on the example select.pl ! # from Bill Karwin. ! # As I have no idea how to write perl programs ! # this may be ugly, buggy or whatsoever ! # tested with IBPerl-0.8p3 ! # ! # use fix_it.sql before you try to export from ! # an original gtcs.gdb, otherwise ! # import_gtcs won't work as expected ! # ! # use IBPerl; *************** *** 119,126 **** ! $outname= ">".$EXPORTPATH.$table.".dat"; open(OUT,$outname) || die "can't create file $outname"; ! print OUT $table . "\n"; ! print "Processing ".$table."\n"; while (1) { --- 130,137 ---- ! $outname= ">".$EXPORTPATH.$table.".csv"; open(OUT,$outname) || die "can't create file $outname"; ! print OUT "$table\n"; ! print "Processing $table\n"; while (1) { *************** *** 140,144 **** foreach $_ (@row) { ! print OUT $st->{Columns}[$i]. ";"; ++$i; } --- 151,155 ---- foreach $_ (@row) { ! print OUT "\"$st->{Columns}[$i]\";"; ++$i; } *************** *** 155,160 **** # Dump the blob to a file and print a reference { ! $outname= "@"."$table.$st->{Columns}[$i].$keyname.blob"; ! print OUT $outname; open (BLOB, ">".$EXPORTPATH.$outname); print BLOB $Fields; --- 166,171 ---- # Dump the blob to a file and print a reference { ! $outname= "@"."$table.$st->{Columns}[$i].$keyname.".$count.".blob"; ! print OUT "$outname;"; open (BLOB, ">".$EXPORTPATH.$outname); print BLOB $Fields; *************** *** 179,183 **** } } ! print OUT $Fields . ";"; } ++$i; --- 190,194 ---- } } ! print OUT "$Fields;"; } ++$i; |
From: Patrick J. P. G. <pat...@us...> - 2000-11-07 02:18:17
|
Update of /cvsroot/firebird/interbase/firebird/patrickgriffin/proposed_patches In directory slayer.i.sourceforge.net:/tmp/cvs-serv18186/proposed_patches Log Message: Directory /cvsroot/firebird/interbase/firebird/patrickgriffin/proposed_patches added to the repository |