Opened 8 years ago

Closed 8 years ago

#3974 closed defect (fixed)

tirex-master crash after tirex-batch requests from STDIN

Reported by: ieskok Owned by: Melchior Moos
Priority: major Milestone:
Component: tirex Version:
Keywords: Cc: Melchior Moos

Description

After doing several requests via tirex-batch to same meta tile, tirex-master crashes. Requests was generated as INIT list from standard input: ... map=osmlt z=14 x=9133 y=5097 map=osmlt z=14 x=9133 y=5098 map=osmlt z=14 x=9133 y=5099 map=osmlt z=14 x=9134 y=5097 map=osmlt z=14 x=9135 y=5097 ...

syslog: tirex-master[3128]: send: Cannot determine peer address at /usr/share/perl5/Tirex/Source/Command.pm line 166

Attachments (1)

patch.diff (601 bytes) - added by Melchior Moos 8 years ago.
patch that fixes the problem

Download all attachments as: .zip

Change History (5)

comment:1 Changed 8 years ago by ieskok

Summary: tirex-master crach after tirex-batch requests from stdintirex-master crash after tirex-batch requests from STDIN

comment:2 in reply to:  description Changed 8 years ago by Melchior Moos

Cc: Melchior Moos added

I can confirm this bug. When I send a tile rendering request via tirex-batch of a tile that is already in the rendering queue tirex-master crashes. My first "solution" was to send a metatile_remove_request request before adding something to the queue but even then I get occasional crashes of tirex-master. I guess that happens if the tile that I'm requesting is currently rendering. When I start tirex-master in debug mode the following output is generated just before the crash:

tirex-master[19654]: request rendering of job id=1316945666_35994112 prio=99 map=default x=73000 y=41648 z=17
tirex-master[19654]: sending request to port 9331 id=1316945666_35994112 prio=99 map=default x=73000 y=41648 z=17
tirex-master[19654]: job rendering done id=1316945666_35993752 map=default x=73000 y=41640 z=17
tirex-master[19654]: request rendering of job id=1316945666_35984200 prio=99 map=default x=146000 y=83272 z=18
tirex-master[19654]: sending request to port 9331 id=1316945666_35984200 prio=99 map=default x=146000 y=83272 z=18
tirex-master[19654]: got msg: map=default prio=99 socket=IO::Socket::UNIX=GLOB(0x20f7a80) type=metatile_remove_request x=73000 y=41648 z=17
tirex-master[19654]: got msg: map=default prio=99 socket=IO::Socket::UNIX=GLOB(0x20f7a80) type=metatile_enqueue_request x=73000 y=41648 z=17
tirex-master[19654]: job rendering done id=1316945666_35994112 map=default x=73000 y=41648 z=17
tirex-master[19654]: request rendering of job id=1316945867_35833752 prio=99 map=default x=16264 y=10856 z=15
tirex-master[19654]: sending request to port 9331 id=1316945867_35833752 prio=99 map=default x=16264 y=10856 z=15
Use of uninitialized value in concatenation (.) or string at /usr/share/perl5/Tirex.pm line 117.
tirex-master[19654]: send: Cannot determine peer address at /usr/share/perl5/Tirex/Source/Command.pm line 166
send: Cannot determine peer address at /usr/share/perl5/Tirex/Source/Command.pm line 166

Changed 8 years ago by Melchior Moos

Attachment: patch.diff added

patch that fixes the problem

comment:3 Changed 8 years ago by Melchior Moos

Owner: changed from jochen@… to Melchior Moos
Status: newaccepted

I think I found the problem (see patch). Can somebody review and commit it?

comment:4 Changed 8 years ago by woodpeck

Resolution: fixed
Status: acceptedclosed

applied in r26916. thanks.

Note: See TracTickets for help on using tickets.