@@ -49,7 +49,7 @@ typedef enum
4949#define PAGE_CHECKSUM_MISMATCH (-256)
5050
5151#define SYS_CHECK (cmd ) do if ((cmd) < 0) { fprintf(stderr, "%s:%d: (%s) %s\n", __FILE__, __LINE__, #cmd, strerror(errno)); exit(EXIT_FAILURE); } while (0)
52- #define IO_CHECK (cmd ,size ) do { int _rc = (cmd); if (_rc != (size)) { fprintf(stderr, "%s:%d: proceeds %d bytes instead of %d: %s\n", __FILE__, __LINE__, _rc, (int)(size), _rc< 0 ? "end of data" : strerror(errno)); exit(EXIT_FAILURE); } } while (0)
52+ #define IO_CHECK (cmd ,size ) do { int _rc = (cmd); if (_rc != (size))if (remote_agent) { fprintf(stderr, "%s:%d: proceeds %d bytes instead of %d: %s\n", __FILE__, __LINE__, _rc, (int)(size), _rc>= 0 ? "end of data" : strerror(errno)); exit(EXIT_FAILURE); } else elog(ERROR, "Communication error: %s", _rc >= 0 ? "end of data" : strerror(errno)); } while (0)
5353
5454typedef struct
5555{
@@ -111,6 +111,7 @@ extern int fio_gzread(gzFile f, void *buf, unsigned size);
111111extern int fio_gzwrite (gzFile f ,void const * buf ,unsigned size );
112112extern int fio_gzeof (gzFile f );
113113extern z_off_t fio_gzseek (gzFile f ,z_off_t offset ,int whence );
114+ extern const char * fio_gzerror (gzFile file ,int * errnum );
114115#endif
115116
116117#endif