MagLev / maglev

GemStone Maglev Ruby Repository
http://maglev.github.io
517 stars 41 forks source link

rake maglev:input[path] fails w/o error output? #399

Closed zenspider closed 9 years ago

zenspider commented 9 years ago
% git diff src/packages
diff --git a/src/packages/Maglev.package/RubyCompiler.class/instance/evalMethodSource.with.binding..st b/src/packages/Maglev.package/RubyCompiler.class/instance/evalMethodSource.with.binding..st
index 2e8df87..4511255 100644
--- a/src/packages/Maglev.package/RubyCompiler.class/instance/evalMethodSource.with.binding..st
+++ b/src/packages/Maglev.package/RubyCompiler.class/instance/evalMethodSource.with.binding..st
@@ -1,13 +1,5 @@
 *maglev-runtime
 evalMethodSource: aString with: vcGlobalsArr binding: aBinding
   "given a String and a RubyBinding, build the complete source string   for an eval "
-   | methSrc lf |
-   lf := Character lf .
-  "$~, $_  initialized to default nil"
-   (methSrc :=  'begin' copy ) add: lf ;
-          add: aString ; add: lf ;
-          add: 'ensure'; add: lf ;
-          add: '  Thread.__evVcGput($~, $_)' ; add: lf ;
-          add: 'end' ; add: lf .
-   ^ methSrc
+   ^ aString copy
% rake maglev:input_file[src/packages/Maglev.package/RubyCompiler.class/instance/evalMethodSource.with.binding..st]

rake aborted!
3
 _____________________________________________________________________________
|                             Configuration Files                             |
|                                                                             |
| System File: /home/ryan/maglev/etc/system.conf                              |
|                                                                             |
| Executable File: /home/ryan/maglev/gem.conf                                 |
| Warning:  File not found (errno=2,ENOENT, The file or directory specified cannot
| be found)                                                                   |
|           using defaults.                                                   |
|_____________________________________________________________________________|
Using GEM_TEMPOBJ_CACHE_SIZE 200000 from -T command line option
 _____________________________________________________________________________
|                Gem Configuration Options for process id 8666                |
|_____________________________________________________________________________|

DUMP_OPTIONS = TRUE;
GEM_GCI_LOG_ENABLED = FALSE;
GEM_ABORT_MAX_CRS = 0;
GEM_FREE_FRAME_CACHE_SIZE = -1;
GEM_FREE_FRAME_LIMIT = -1;
GEM_FREE_PAGEIDS_CACHE = 200;
GEM_HALT_ON_ERROR = 0;
GEM_KEEP_MIN_SOFTREFS = 0;
GEM_MAX_SMALLTALK_STACK_DEPTH = 15000;
GEM_NATIVE_CODE_ENABLED = TRUE;
GEM_PRIVATE_PAGE_CACHE_KB = 960;
GEM_PGSVR_COMPRESS_PAGE_TRANSFERS = FALSE;
GEM_PGSVR_FREE_FRAME_CACHE_SIZE = -1;
GEM_PGSVR_FREE_FRAME_LIMIT = -1;
GEM_PGSVR_UPDATE_CACHE_ON_READ = FALSE;
GEM_RPC_KEEPALIVE_INTERVAL = 0;
GEM_RPCGCI_TIMEOUT = 0;
GEM_RPC_USE_SSL = TRUE;
GEM_SOFTREF_CLEANUP_PERCENT_MEM = 50;
GEM_TEMPOBJ_AGGRESSIVE_STUBBING = TRUE;
GEM_TEMPOBJ_CACHE_SIZE = 200000;
GEM_TEMPOBJ_MESPACE_SIZE = 0;
GEM_TEMPOBJ_OOPMAP_SIZE = 0;
GEM_TEMPOBJ_SCOPES_SIZE = 20000;
GEM_TEMPOBJ_POMGEN_SIZE = 0;
GEM_TEMPOBJ_POMGEN_PRUNE_ON_VOTE = 50;
GEM_TEMPOBJ_POMGEN_SCAVENGE_INTERVAL = 1800;
CFG_GEM_TEMPOBJ_START_ADDR not used on this platform
LOG_WARNINGS = TRUE;
SHR_NUM_FREE_FRAME_SERVERS = -1;
SHR_PAGE_CACHE_LOCKED = FALSE;
SHR_PAGE_CACHE_NUM_PROCS = 4089;
SHR_PAGE_CACHE_NUM_SHARED_COUNTERS = 1900;
SHR_PAGE_CACHE_PERMISSIONS = 660;
SHR_PAGE_CACHE_SIZE_KB = 1000000;
SHR_TARGET_FREE_FRAME_COUNT = -1;
SHR_WELL_KNOWN_PORT_NUMBER = 0;
(vmGc spaceSizes: eden init 2048K max 37504K , survivor init 448K max 6272K,
 vmGc    old max 149952K, code max 40000K, perm max 20032K, pom 10 * 16704K = 167040K,
 vmGc    remSet 4036K, meSpace max 191368K oopMapSize 1048576 )
 _____________________________________________________________________________
|             GemStone/S64 Object-Oriented Data Management System             |
|                    Copyright (C) VMware, Inc. 1986-2014                     |
|                            All rights reserved.                             |
|                           Covered by U.S Patents:                           |
|            6,256,637 Transactional virtual machine architecture             |
|              6,360,219 Object queues with concurrent updating               |
|                  6,567,905 Generational Garbage Collector.                  |
| 6,681,226 Selective Pessimistic Locking for a Concurrently Updateable Database
+-----------------------------------------------------------------------------+
|    PROGRAM: topaz, Linear GemStone Interface (Linked Session)               |
|    VERSION: 3.1.0.2.1, Beta  Tue Oct 21 16:16:34 2014                       |
|      BUILD: gss64_maglev_1_9_branch-34619                                   |
|  BUILT FOR: x86-64 (Linux)                                                  |
|       MODE: 64 bit                                                          |
| RUNNING ON: 2-CPU ubuntu x86_64 (Linux 3.16.0-33-generic #44-Ubuntu SMP Thu |
| Mar 12 12:19:35 UTC 2015) 3032MB                                            |
| PROCESS ID: 8666      DATE: 05/20/2015 16:42:54 PDT                         |
|   USER IDS: REAL=ryan (1000) EFFECTIVE=ryan (1000)                          |
 _____________________________________________________________________________
|   GEMSTONE_GLOBAL_DIR = /home/ryan/maglev                                   |
|_____________________________________________________________________________|
neither .topazini nor $HOME/.topazini were found
[Info]: LNK client/gem GCI levels = 851/851
[Info]: libssl-3.1.0.2.1-64.so: loaded
[Info]: User ID: DataCurator
[Info]: Repository: maglev
[Info]: Session ID: 5
[Info]: GCI Client Host: <Linked>
[Info]: Page server PID: -1
[Info]: Login Time: 05/20/2015 16:42:54.742 PDT
[Info]: libicudata-3.1.0.2.1-64.so: loaded
[Info]: libicuuc-3.1.0.2.1-64.so: loaded
[Info]: libicui18n-3.1.0.2.1-64.so: loaded
Gave this VM preference for OOM killer, Wrote to /proc/8666/oom_score_adj value 250
[05/20/2015 16:42:54.749 PDT]
  gci login: currSession 1 rpc gem processId -1 OOB keep-alive interval -1
successful login
TopazError: 
/home/ryan/maglev/rakelib/contrib/ottobehrens/topaz.rb:52:in `commands'
/home/ryan/maglev/rakelib/contrib/ottobehrens/stone.rb:271:in `topaz_commands'
/home/ryan/maglev/rakelib/contrib/ottobehrens/stone.rb:187:in `input_file'
/home/ryan/maglev/Rakefile:224:in `block (3 levels) in <top (required)>'
Tasks: TOP => maglev:input_file
(See full trace by running task with --trace)

It seems like ottobehres/* is crufty. IIRC, that's where I traced rake maglev:start to and those don't work either, possibly for the same reasons...

zenspider commented 9 years ago

Same thing happens with rake maglev:reload_file_tree and friends... This is frustrating.

zenspider commented 9 years ago

I'm gonna close this and reword a new ticket

Monty commented 9 years ago

I’m sure contrib/ottobehrens/* is beyond crufty. Otto originally used this for GemStone/S & GLASS - using rake to manage multiple instances of GemStone/S -- it allowed him to deal with a number of differently named Stones. Adapting it to MagLev was an afterthought, but it did provide useful multi-stone functionality.

I used to run all the tests in contrib/ottobehrens/tests - starting/stopping stones, doing backups, etc. I suspect this practice has been discontinued and the tests may no longer work. Is anyone running multiple MagLev stones? I don’t see any reason contrib/ottobehrens/* needs to work for GemStone/S & GLASS. Maybe this functionality could be simplified/refactored.— Monty