[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference bulova::decw_jan-89_to_nov-90

Title:DECWINDOWS 26-JAN-89 to 29-NOV-90
Notice:See 1639.0 for VMS V5.3 kit; 2043.0 for 5.4 IFT kit
Moderator:STAR::VATNE
Created:Mon Oct 30 1989
Last Modified:Mon Dec 31 1990
Last Successful Update:Fri Jun 06 1997
Number of topics:3726
Total number of notes:19516

3266.0. "DECwindows called from Oracle" by ISIDRO::MAMORENO () Tue Aug 28 1990 10:14

       Do you know the posibility to call X-windows from SQL program with
    ORACLE data base?
    
       I do not mean a Pro*C or similar, but a 4GL-SQL program like Report
    Writer and other Oracle products.
    
       Miguel Angel Moreno @sqo
    
       Telecom Industry Group - Spain
T.RTitleUserPersonal
Name
DateLines
3266.1Long callbacks won't workTOOLEY::B_WACKERTue Aug 28 1990 12:076
Since database inquiries commonly take over .25 second you'll probably 
want to set up a separate process for the DB stuff.  Have it 
communicate with the DW process with mailboxes or shared memory.  Then 
your server won't crash if you get stuck in a long inquiry.

Bruce
3266.2An additional process may be overkill...IO::MCCARTNEYJames T. McCartney III - DTN 381-2244 ZK02-2/N24Tue Aug 28 1990 14:3023
There is another solution to the problem of long call backs that may be less
expensive than another process. Use a timer-ast to drain the X event queue to
a lookaside list. Then replace the traditional mainloop with code which looks
something like:

   while(1) {
    if (lookaside != &lookaside)
     remove_queue(lookaside,event); /* remove_queue is a jacket macro for REMQUE */
    else
     XtNextEvent(&event);
    XtDispatch(event);
   }


The overhead of a timer is much less than that of the interprocess communication
the second process.

The layered products which I am aware of use a timer which is in the 50 to 100
millisecond range, although you may get acceptable results with a larger time
value.

James
3266.3PSW::WINALSKICareful with that VAX, EugeneWed Aug 29 1990 14:3615
However, if you use the timer AST mechanism described in .2, you get the
obnoxious and disgusting behavior of so many of our DECwindows applications
(DW MAIL, DW NOTES, and DW LSE, for example), where they don't process any
events (such as expose events) while they're off doing a long callback.

The timer AST stuff that .2 talks about hacks around the problem of the
server disconnecting misbehaving applications, but it doesn't solve the
real problem, which is that the applications are not doing timely event
processing like they're supposed to.

I recommend the multiprocess approach until we get multithread support, when
you can have one thread dedicated solely to dispatching X events (you can do
this in Ada now, BTW).

--PSW