-
Notifications
You must be signed in to change notification settings - Fork 2
/
bugs.txt
executable file
·99 lines (51 loc) · 4.72 KB
/
bugs.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
//dsdelete('*') apparently removes the distproc directory; dsloadsavestate reads the sys directory
dsinterrupt doesn't handle not-yet-active processors
//dsmapredclose often doesnt close everything, esp when dsmapreduce is already running. possibly dsmapredclose issues an interrupt, but sometimes the interrupt commands get read and then the exit is written before the master's delete command.
//dssave is slow when checking large arrays that are already completely saved
...'pid' file is written to the code directory
unable to do loadsavestate->load on an empty cell array
//dsup when replacing an entire cell array creates a [] stump in the savestate, which causes errors later
chmod doesn't happen sometimes--esp. when creating the bestbin symlinks and when a struct containing a result cell array of a dsmapreduce doesn't exist when the dsmapreduce is called
dsmapreduce doesn't work with map variables that are only persisted
//dsmapreducers should send their resulting savestate back to the master, and write their progress to a file parallel to the main communication ones.
optimize dsmapreducer to communicate back when variables are completed. have dsmapreduce load these variables as they are output.
dsclear doesn't handle clearing parents of currpath
//issue an error when a dsmapreduce client creates a reduce variable that's not a cell
//dsmapreduce doesn't handle being cd'd into a place except the root
dsdelete doesn't handle symlinks--it needs to recurse down and find them.
dsmapreducer errors on load/save outside function execution shouldn't let the dsworker end up in a hanging state.
clear memory from dsmapreducer when it errors out
dsmapreduce does not handle 2-d reduce variables
allow a per-reduce-var noloadresults
dsup doesn't handle subscripted assignments. neither does dsclear handle subscripted clears.
dsmapredopen shouldn't reassign mapreducer id's if it's not sure they've exited.
dssymlink with a cell array gets the target wrong; leaves off the brackets because it uses the variable name instead of the disk name.
empty cells written in a dsmapreduce job look the same as an ordinary variable
to handlewritten
interrupts written to processors that haven't started cause them to exit
dswork doesn't clear variables that are written
dsdelete('ds.init*') deletes ds.isinit
//dsdelete('ds.a') crashes because it's a single character
start a dsmapreduce that crashes during reduce. on dscompletereduce, crashes result in results not getting loaded. most likely the results from the crashed jobs. also, progress values don't seem to get read, and get things stuck on the next dsdistprocmgr
forcerunset that leaves out procs makes dsdistprocmgr hit a keyboard: that proc ends up in availslaves but not idleprocs.
rollback during reduce does not roll back stuff created by map...questionable if it works at all
dsmapreduce should delete reduce variables if they already exist; otherwise the mappers won't write them because they exist in the savestate.
if variables are written multiple times from rundistributed, should throw an error, not keyboard; if already error handling, shouldn't do anything.
non-cell non-loaded variables used as map variables aren't read
if detectors is a 4-by-n cell array, with all but the first row empty, dsload('ds.detectors{4}') returns empty.
dsruncommand() on a mapper during mapreduce attempts to save mapreduce variable locally, which fails.
dssave fails if you attempt to save a 2-d array of images
rollback on reduce phase should delete things created on map phase
dsup does not handle cell arrays correctly
if dswork is writing things that repeat, keep going (don't keyboard), but exit with error once things are done...better yet, dsup should not work in distributed mode.
found something still running error (e.g. when we run out of disk space). should be handled via drop-to-command-line.
if something repeatedly crashes, provide way to restart them cleanly. current thing will leave progressfiles
mapreduce doesn't pick up new hosts; running dsmapreduce before running dsrundistributed will cause no hosts to be found.
//dsmapredopen follwed immediately by dsmapredrestart--seems to not wait for dsmapredrestart to finish
segfault on map phase of mapreduce will still allow map to finish and reduce to start
if a worker appends to a file (i.e. a 2d array) then crashes, roll back will delete the whole file.
data1=dsload('ds.r2.*{1}'); does not work: throws exception since output is never assigned
it appears to be possible for roll back to delete things that are marked as saved in the root savestate.
generate pretty error message when too many workers have crashed
ask for confirmation when starting mapreduce or exiting without closing distributed session
allatonce doesn't work on a single machine