Megatest

Check-in [5d2ee5c691]
Login
Overview
Comment:completed fix for nested calls as part of transaction. Seems to work great but I'm unable to get bigrun to push more than 132 parallel tests (over two hosts).
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | v1.63-stackdumpfix
Files: files | file ages | folders
SHA1: 5d2ee5c6911a66d10008ec2b703d475a7674668e
User & Date: matt on 2017-01-09 23:38:23
Other Links: branch diff | manifest | tags
Context
2017-01-10
11:09
Bumped version to v1.6304 Closed-Leaf check-in: fa49f48d6b user: mrwellan tags: v1.63-stackdumpfix, v1.6304
00:45
merged in solid fixes for server stability problems check-in: ebafbfa4a1 user: bjbarcla tags: v1.63
2017-01-09
23:38
completed fix for nested calls as part of transaction. Seems to work great but I'm unable to get bigrun to push more than 132 parallel tests (over two hosts). check-in: 5d2ee5c691 user: matt tags: v1.63-stackdumpfix
21:16
Partial implementation of passing db in place of dbstruct to enable transactions check-in: a4a65fdc88 user: mrwellan tags: v1.63-stackdumpfix
Changes

Modified db.scm from [e93370db88] to [abd06b4b08].

133
134
135
136
137
138
139

140


141
142
143
144
145
146
147
133
134
135
136
137
138
139
140

141
142
143
144
145
146
147
148
149







+
-
+
+







;; r/w is a flag to indicate if the db is modified by this query #t = yes, #f = no
;;
(define (db:with-db dbstruct run-id r/w proc . params)
  (let* ((have-struct (dbr:dbstruct? dbstruct))
         (dbdat (if have-struct 
                    (db:get-db dbstruct)
                    #f))
	 (db    (if have-struct
	 (db    (db:dbdat-get-db dbdat))
		    (db:dbdat-get-db dbdat)
		    dbstruct))
	 (use-mutex (> *api-process-request-count* 25)))
    (if (and use-mutex
	     (common:low-noise-print 120 "over-50-parallel-api-requests"))
	(debug:print-info 0 *default-log-port* *api-process-request-count* " parallel api requests being processed in process " (current-process-id) ", throttling access"))
    (if (common:low-noise-print 120 (conc "parallel-api-requests" *max-api-process-requests*))
	(debug:print-info 0 *default-log-port* "Parallel api request count: " *api-process-request-count* " max parallel requests: " *max-api-process-requests*))
    (handle-exceptions