BUG: Appending to a Table on a Network Hangs the Power MacLast reviewed: September 13, 1996Article ID: Q153154 |
The information in this article applies to:
SYMPTOMSWhen using FoxPro for Macintosh 2.6 on a Power Macintosh computer with the operating system 7.5.3 software, the computer will hang after appending or editing records to a table located on the network server. This problem occurs on computers that have a Peripheral Component Interconnect (PCI) board as part of their hardware. Apple is shipping these PCI boards as part of their standard equipment on most Power Macintosh computers.
WORKAROUNDTo solve the problem of appending and editing tables on the server, try one of the following:
STATUSMicrosoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.
MORE INFORMATIONThis problem does not occur on Power Macintosh computers with operating systems before 7.5.3. Turning off the Modern Memory Manager(MMM) will work sometimes and the computer will not hang when appending a record from a table on the server. If a software program called Speed Doubler is installed, the problem goes away. Speed Doubler installs its own 68K emulator, replacing the one that comes with system 7.5.3. The 68K emulator that comes with 7.5.3 seems to be the controlling problem. Below is a sample program that causes a Power Macintosh with a PCI board to hang. When running the code below in the Trace window, place the table out on a server when prompted, and note that the computer hangs after issuing the second UNLOCK command. If the LOCK and UNLOCK commands are not used, the system hangs after three or more passes through the FOR loop.
Sample Code************* Beginning of Code. CLOSE DATABASES SET SAFETY OFF x = PUTFILE( "Where?", "test.dbf") IF !EMPTY( x ) SELECT 0 CREATE TABLE (x) ; ( CUST C( 8 ), SUBNO C( 4 ), ; NKEY C( 35 ), NAME C( 25 ), ; PHONEKEY C( 23 )) INDEX ON UPPER( nkey ) TAG nkey ADDITIVE INDEX ON cust+subno TAG cust ADDITIVE INDEX ON phonekey TAG phonekey ADDITIVE INDEX ON name TAG name ADDITIVE USE (x) SHARED FOR i = 1 TO 10 APPEND BLANK =RLOCK() REPLACE Test.phonekey WITH REPLICATE( ALLTRIM( STR( i ) ), 10 ) REPLACE Test.name WITH REPLICATE( CHR( 64 + i ), 10 ) UNLOCK ENDFOR ENDIF ************* End of Code. |
Additional reference words: 2.60a FoxMac INSERT INTO FROM MEMVAR
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |