Windows Printer spooler problem? samba 3.0.10
nishihara
nishihara at silexamerica.com
Thu Jul 7 06:16:35 GMT 2005
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
> | Hello,
> |
> | I have the one problem on the printing function.
> |
> | Sometimes I print out the job, then donot erase the
> | printer job information from the spooler automatically.
> What "state" is the job being listed as in the
> Windows print queue monitor ?
"state" means "status"? It is empty.
> | The job information has been deleted from the tdb of
> | /locks/printing/*.tdb, while the print job data is
> | received. Normally, deleting packet(RRPCN request) send
> | from the samba server to client in 1 or 2 minute after
> | print out. I don't know why the samba server delete
> | the record before the printer job dose not printed out.
> The internal code removes a print job from the tdb
> if the job has been marked as already having been handed
> off to the print system (in the OS) and does not appear
> in the lpq output.
I checked the packet. Samba server already has been received the
print data. The packets flow as follow.
I think strangely that the deleted status packet is send before the
spooled status packet.
Samba server : 192.168.3.1
Windows Client : 192.168.3.200
Ethereal packet structure
[Time][source IP][Distination][Protocol]
[Info]
2326.589171 192.168.3.1 192.168.3.200 SPOOLSS
WritePrinter response, 41798 bytes written
2326.589390 192.168.3.200 192.168.3.1 SPOOLSS
EndPagePrinter request, OpenPrinterEx(\\192.168.3.1\Canon LASER SHOT LBP-1420)
2326.594215 192.168.3.1 192.168.3.200 SPOOLSS
EndPagePrinter response
2326.696753 192.168.3.200 192.168.3.1 SPOOLSS
WritePrinter request, OpenPrinterEx(\\192.168.3.1\Canon LASER SHOT LBP-1420), 2952 bytes[Short Frame]
2326.696851 192.168.3.200 192.168.3.1 TCP
[Continuation to #3758] 1628 > microsoft-ds [ACK] Seq=128564 Ack=30002 Win=16143 Len=1460
2326.696879 192.168.3.200 192.168.3.1 TCP
[Continuation to #3758] 1628 > microsoft-ds [PSH, ACK] Seq=130024 Ack=30002 Win=16143 Len=172
2326.705227 192.168.3.1 192.168.3.200 TCP
microsoft-ds > 1628 [ACK] Seq=30002 Ack=130024 Win=62780 Len=0
2326.706898 192.168.3.1 192.168.3.200 SPOOLSS
WritePrinter response, 2952 bytes written
2326.707081 192.168.3.200 192.168.3.1 SPOOLSS
EndDocPrinter request, OpenPrinterEx(\\192.168.3.1\Canon LASER SHOT LBP-1420)
2326.743743 192.168.3.1 192.168.3.200 TCP
microsoft-ds > 1628 [ACK] Seq=30094 Ack=130328 Win=62780 Len=0
2328.489334 192.168.3.1 192.168.3.200 SPOOLSS
EndDocPrinter response
2328.492041 192.168.3.200 192.168.3.1 SPOOLSS
ClosePrinter request, OpenPrinterEx(\\192.168.3.1\Canon LASER SHOT LBP-1420)
2328.502351 192.168.3.1 192.168.3.200 TCP
microsoft-ds > 1628 [ACK] Seq=30182 Ack=130460 Win=62780 Len=0
2328.504779 192.168.3.1 192.168.3.200 SPOOLSS
ClosePrinter response
2328.696088 192.168.3.200 192.168.3.1 TCP
1628 > microsoft-ds [ACK] Seq=130460 Ack=30290 Win=17324 Len=0
/* <<<<< DELETED JOB INFORMATION (JOB ID 9) >>>>>>>>>> */
2328.852641 192.168.3.1 192.168.3.200 SPOOLSS
RRPCN request, changeid 1, 1 notification
2328.853828 192.168.3.200 192.168.3.1 SPOOLSS
RRPCN response
2328.856123 192.168.3.1 192.168.3.200 TCP
32773 > netbios-ssn [ACK] Seq=2256 Ack=1336 Win=7504 Len=0 TSV=149237 TSER=44903
/* <<<<< DELETED JOB INFORMATION (ONE MORE SAME PACKET) (JOB ID 9)>>>>>>>>>> */
2328.857261 192.168.3.1 192.168.3.200 SPOOLSS
RRPCN request, changeid 1, 1 notification
2328.858190 192.168.3.200 192.168.3.1 SPOOLSS
RRPCN response
2328.892209 192.168.3.1 192.168.3.200 TCP
32773 > netbios-ssn [ACK] Seq=2446 Ack=1428 Win=7504 Len=0 TSV=149241 TSER=44903
/* <<<<< JOB IS SPOOLED STATUS 1 (JOB ID 9)>>>>>>> */
2329.856017 192.168.3.1 192.168.3.200
SPOOLSS RRPCN request, changeid 1, 8 notifies
2329.884671 192.168.3.200 192.168.3.1 SPOOLSS
RRPCN response
2329.888132 192.168.3.1 192.168.3.200 TCP
32773 > netbios-ssn [ACK] Seq=2888 Ack=1520 Win=7504 Len=0 TSV=149340 TSER=44913
/* <<<<< JOB IS SPOOLED STATUS 2 (JOB ID 9)>>>>>>> */
2329.889717 192.168.3.1 192.168.3.200 SPOOLSS
RRPCN request, changeid 1, 8 notifies
2329.890073 192.168.3.200 192.168.3.1 SPOOLSS
RRPCN response
2329.932243 192.168.3.1 192.168.3.200 TCP
32773 > netbios-ssn [ACK] Seq=3330 Ack=1612 Win=7504 Len=0 TSV=149345 TSER=44913
2359.884476 192.168.3.200 192.168.3.1 SMB
Close Request, FID: 0x7030
2359.889656 192.168.3.1 192.168.3.200 SMB
Close Response
2359.889877 192.168.3.200 192.168.3.1 SMB
Close Request, FID: 0x7031
2359.893004 192.168.3.1 192.168.3.200 SMB
Close Response
2360.086526 192.168.3.200 192.168.3.1 TCP
1628 > microsoft-ds [ACK] Seq=130550 Ack=30368 Win=17246 Len=0
2385.992742 192.168.3.1 192.168.3.200 ICMP
Echo (ping) request
2385.992792 192.168.3.200 192.168.3.1 ICMP
Echo (ping) reply
2386.200228 192.168.3.200 192.168.3.1 SPOOLSS
FCPN request
> | /*
> | * Invalidate the queue for 3 reasons.
> | */
> | Isn't there problem in this requirement? Can I escape
> | this problem by change the lpq cache time?
> What problem?
I write this problem more detail.
I printed out the test page each one from the Windows XP Professional.
Usually the printed job information deleted 1 - 2 minute automatically.
In this problem, it remains for one hour or more. But it disappears if
Printer spooler is renewed(Pushed F5) after one hour.
When the "update_monitored_printq_cache" function is called bud timing,
the record in the tdbfile is deleted on "lpq cache time".
Is there a method of correcting something?
Thank you for your support.
----
Kenta Nishihara
silex technology america, Inc.
E-mail: nishihara at silexamerica.com
[Phone] 801-748-1199 [Fax] 801-748-0730
More information about the samba-technical
mailing list