[squid-dev] Build failed in Jenkins: 3.HEAD-amd64-OpenBSD-5.4 #208

noc at squid-cache.org noc at squid-cache.org
Fri Nov 7 12:55:03 UTC 2014


See <http://build.squid-cache.org/job/3.HEAD-amd64-OpenBSD-5.4/208/changes>

Changes:

[squidadm at squid-cache.org] SourceFormat Enforcement

[Amos Jeffries] Parser-NG: HTTP Parser structural redesign

This update is to lay the groundwork for several planned future projects
implementing protocol specific parsers, seperating the currently
intertwinned client connection management and HTTP protocol parsing
logics, and for zero-copy processing of transactions using SBuf.


This patch renames the HttpParser class as RequestParser and moves it
into the Http::One:: namespace as child of an Http::Parser class with
generic API accessors for shared use by other HTTP message parsers.

The class API
- is updated to process both the request-line and HTTP mime headers,
returning an incomplete parse result until the entire headers parts of
the message have been received.
- now contains accessor methods for retrieving the method, URI,
protocol, mime headers block (as an SBuf) and some metrics about those.
- the old request_offsets structure and similar offset details are no
longer exposed.
- now emits 414 and 431 HTTP status codes as appropriate.

The parser is made partially incremental and some use of Tokenizer is
added for faster parsing. There is more that can be done to further
speed up parsing of slow or very large requests.

Much of the code from client_side.cc parseHttpRequest() and also the
header-field code from mime_headers.cc has been moved into the parser
class. The client_side.cc code now simply runs the main
Http1::RequestParser::parse() method then uses accessors to retrieve
and process the parse results.

A unit test for incremental parsing has been added to testHttpParser.

Also, the HttpRequestMethod class is moved into the Http:: namespace and
library to reduce dependencies on the parser class outside the library.


The gains made so far from incremental parse, reducing parser passes and
zero-copy SBuf are offset by several temporary performance regressions
added converting SBuf for legacy code use. These are marked for later
removal.

------------------------------------------
[...truncated 7047 lines...]
../../src/tests/testHttp1Parser.cc:846: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:860: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:861: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:862: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:863: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:864: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:865: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:866: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:867: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:868: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:869: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:870: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:871: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:872: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:873: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:874: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:875: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:884: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:885: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:886: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:887: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:888: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:889: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:890: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:891: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:892: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:893: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:894: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:895: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:896: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:897: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:898: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:899: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:958: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:959: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:960: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:961: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:962: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:963: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:964: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:965: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:966: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:967: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:968: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:969: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:970: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:971: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:972: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:973: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:996: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:997: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:998: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:999: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1000: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1001: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1002: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1003: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1004: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1005: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1006: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1007: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1008: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1009: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1010: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1011: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1025: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1026: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1027: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1028: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1029: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1030: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1031: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1032: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1033: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1034: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1035: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1036: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1037: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1038: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1039: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1040: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1069: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1070: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1071: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1072: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1073: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1074: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1075: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1076: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1077: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1078: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1079: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1080: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1081: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1082: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1083: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1084: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1116: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1117: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1118: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1119: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1120: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1121: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1122: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1123: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1124: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1125: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1126: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1127: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1128: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1129: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1130: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1131: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1144: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1145: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1146: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1147: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1148: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1149: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1150: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1151: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1152: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1153: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1154: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1155: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1156: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1157: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1158: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1159: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1190: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1191: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1192: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1193: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1194: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1195: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1196: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1197: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1198: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1199: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1200: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1201: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1202: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1203: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1204: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1205: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1217: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1218: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1219: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1220: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1221: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1222: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1223: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1224: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1225: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1226: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1227: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1228: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1229: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1230: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1231: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1232: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1243: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1244: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1245: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1246: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1247: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1248: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1249: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1250: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1251: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1252: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1253: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1254: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1255: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1256: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1257: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1258: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1269: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1270: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1271: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1272: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1273: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1274: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1275: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1276: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1277: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1278: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1279: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1280: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1281: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1282: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1283: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1284: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1297: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1298: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1299: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1300: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1301: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1302: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1303: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1304: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1305: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1306: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1307: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1308: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1309: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1310: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1311: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1312: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1325: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1326: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1327: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1328: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1329: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1330: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1331: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1332: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1333: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1334: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1335: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1336: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1337: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1338: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1339: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1340: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1372: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1373: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1374: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1375: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1376: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1377: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1378: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1379: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1380: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1381: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1382: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1383: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1384: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1385: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1386: error: expected primary-expression before '.' token
../../src/tests/testHttp1Parser.cc:1387: error: expected primary-expression before '.' token
*** Error 1 in squid-3.HEAD-BZR/_build/src (Makefile:6912 'tests/testHttp1Parser.o')
*** Error 1 in squid-3.HEAD-BZR/_build/src (Makefile:7485 'check-am')
*** Error 1 in squid-3.HEAD-BZR/_build/src (Makefile:7059 'check-recursive')
*** Error 1 in squid-3.HEAD-BZR/_build/src (Makefile:7488 'check')
*** Error 1 in squid-3.HEAD-BZR/_build (Makefile:566 'check-recursive')
*** Error 1 in <http://build.squid-cache.org/job/3.HEAD-amd64-OpenBSD-5.4/ws/btlayer-00-default> (Makefile:792 'distcheck')
Build FAILED.
Build step 'Execute shell' marked build as failure


More information about the squid-dev mailing list