From rvirding@REDACTED Mon Jun 2 16:50:39 2014 From: rvirding@REDACTED (Robert Virding) Date: Mon, 2 Jun 2014 16:50:39 +0200 Subject: [erlang-bugs] Trace bug? In-Reply-To: References: Message-ID: No, answers? Robert On 30 May 2014 23:18, Robert Virding wrote: > Can anyone tell me if this is a bug? If not how do I get around it in > simple way? > > Robert > > > > On 27 May 2014 17:45, Robert Virding wrote: > >> We have discovered strange behaviour when tracing message sends. We turn >> on tracing message send for a process. In R16 and 17 it seems like there is >> no trace message when sending to a registered process name, while sending >> to a pid generates a trace message as it should. In R15 however you get a >> trace message both sending to a registered name and hen sending to a pid. >> Is this a bug or is it a new undocumented feature? >> >> As an example I include simple program in which worker sends a message to >> a registered server and the server replies by sending the worker pid. Here >> are outputs when running in 17: >> >> Erlang/OTP 17 [erts-6.0] [source-07b8f44] [64-bit] [smp:4:4] >> [async-threads:10] [hipe] [kernel-poll:false] [dtrace] >> >> Eshell V6.0 (abort with ^G) >> 1> c(trace_procs). >> {ok,trace_procs} >> 2> trace_procs:start(). >> trace_procs 7 Server: '<0.39.0>' >> trace_procs 10 Worker: '<0.40.0>' >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' >> >> and in R15: >> >> Erlang R15B03 (erts-5.9.3.1) [source] [64-bit] [smp:4:4] >> [async-threads:0] [hipe] [kernel-poll:false] >> >> Eshell V5.9.3.1 (abort with ^G) >> 1> c(trace_procs). >> {ok,trace_procs} >> 2> trace_procs:start(). >> trace_procs 7 Server: '<0.38.0>' >> trace_procs 10 Worker: '<0.39.0>' >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' >> >> What gives? >> >> Robert >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From tony@REDACTED Mon Jun 2 17:11:11 2014 From: tony@REDACTED (Tony Rogvall) Date: Mon, 2 Jun 2014 17:11:11 +0200 Subject: [erlang-bugs] Trace bug? In-Reply-To: References: Message-ID: in bif.c:1885 (r17) The code will only call the trace_send function if the name is NOT registered. Not sure how nor why. When NO process is registered to x (yield badarg) > erlang:trace(spawn(fun() -> x ! message end), true, [send]). 2> flush(). Shell got {trace,<0.45.0>,send,message,x} ok When process is registered to x: register(x, self()). > erlang:trace(spawn(fun() -> x ! message end), true, [send]). 1 11> flush(). Shell got message ok Feature? ;-) /Tony On 2 jun 2014, at 16:50, Robert Virding wrote: > No, answers? > > Robert > > > > On 30 May 2014 23:18, Robert Virding wrote: > Can anyone tell me if this is a bug? If not how do I get around it in simple way? > > Robert > > > > On 27 May 2014 17:45, Robert Virding wrote: > We have discovered strange behaviour when tracing message sends. We turn on tracing message send for a process. In R16 and 17 it seems like there is no trace message when sending to a registered process name, while sending to a pid generates a trace message as it should. In R15 however you get a trace message both sending to a registered name and hen sending to a pid. Is this a bug or is it a new undocumented feature? > > As an example I include simple program in which worker sends a message to a registered server and the server replies by sending the worker pid. Here are outputs when running in 17: > > Erlang/OTP 17 [erts-6.0] [source-07b8f44] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] [dtrace] > > Eshell V6.0 (abort with ^G) > 1> c(trace_procs). > {ok,trace_procs} > 2> trace_procs:start(). > trace_procs 7 Server: '<0.39.0>' > trace_procs 10 Worker: '<0.40.0>' > trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > > and in R15: > > Erlang R15B03 (erts-5.9.3.1) [source] [64-bit] [smp:4:4] [async-threads:0] [hipe] [kernel-poll:false] > > Eshell V5.9.3.1 (abort with ^G) > 1> c(trace_procs). > {ok,trace_procs} > 2> trace_procs:start(). > trace_procs 7 Server: '<0.38.0>' > trace_procs 10 Worker: '<0.39.0>' > trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' > trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' > trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' > trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > > What gives? > > Robert > > > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs "Installing applications can lead to corruption over time. Applications gradually write over each other's libraries, partial upgrades occur, user and system errors happen, and minute changes may be unnoticeable and difficult to fix" From kostiamalikov@REDACTED Tue Jun 3 06:18:22 2014 From: kostiamalikov@REDACTED (Constantin Malikov) Date: Tue, 3 Jun 2014 11:18:22 +0700 Subject: [erlang-bugs] BugReport_function_clause_ssh Message-ID: Hello , friends. I want to tell you about a bug in Erlang: When using ssh following error occurred: Erlang ssh connection handler failed with reason: {function_clause, [{ssh_message,decode, [<<1,0,0,0,11,0,0,0,20, 100,105,115,99,111, 110,110,101,99,116, 101,100,32,98,121,32, 117,115,101,114>>], [{file, "/home/konstantin/git/erl/lib/ssh/src/ssh_message.erl"}, {line,267}]}, {ssh_connection_handler, generate_event,4, [{file, "/home/konstantin/git/erl/lib/ssh/src/ssh_connection_handler.erl"}, {line,1204}]}, {gen_fsm,handle_msg,7, [{file,"gen_fsm.erl"}, {line,505}]}, {proc_lib, init_p_do_apply,3, [{file,"proc_lib.erl"}, {line,239}]}]} , Stacktace: [{ssh_message,decode, [<<1,0,0,0,11,0,0,0,20,100,105,115,99,111,110,110,101,99, 116,101,100,32,98,121,32,117,115,101,114>>], [{file, "/home/konstantin/git/erl/lib/ssh/src/ssh_message.erl"}, {line,267}]}, {ssh_connection_handler,generate_event,4, [{file, "/home/konstantin/git/erl/lib/ssh/src/ssh_connection_handler.erl"}, {line,1204}]}, {gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,505}]}, {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}] please report this to erlang-bugs@REDACTED With best regards, Malikov Constantin, software developer, Eltex. -------------- next part -------------- An HTML attachment was scrubbed... URL: From lukas@REDACTED Tue Jun 3 10:36:22 2014 From: lukas@REDACTED (Lukas Larsson) Date: Tue, 3 Jun 2014 10:36:22 +0200 Subject: [erlang-bugs] Trace bug? In-Reply-To: References: Message-ID: <538D8906.70205@erlang.org> Hello Robert and Tony, Thanks for reporting and tracking this down. It seems to be a bug that was introduced in R16B. I've written a fix for it that probably will be part of Erlang/OTP 17.1. Lukas On 02/06/14 17:11, Tony Rogvall wrote: > in bif.c:1885 (r17) > > The code will only call the trace_send function if the name is NOT registered. > Not sure how nor why. > > When NO process is registered to x (yield badarg) > >> erlang:trace(spawn(fun() -> x ! message end), true, [send]). > 2> flush(). > Shell got {trace,<0.45.0>,send,message,x} > ok > > When process is registered to x: > > register(x, self()). >> erlang:trace(spawn(fun() -> x ! message end), true, [send]). > 1 > 11> flush(). > Shell got message > ok > > Feature? > > ;-) > > /Tony > > > On 2 jun 2014, at 16:50, Robert Virding wrote: > >> No, answers? >> >> Robert >> >> >> >> On 30 May 2014 23:18, Robert Virding wrote: >> Can anyone tell me if this is a bug? If not how do I get around it in simple way? >> >> Robert >> >> >> >> On 27 May 2014 17:45, Robert Virding wrote: >> We have discovered strange behaviour when tracing message sends. We turn on tracing message send for a process. In R16 and 17 it seems like there is no trace message when sending to a registered process name, while sending to a pid generates a trace message as it should. In R15 however you get a trace message both sending to a registered name and hen sending to a pid. Is this a bug or is it a new undocumented feature? >> >> As an example I include simple program in which worker sends a message to a registered server and the server replies by sending the worker pid. Here are outputs when running in 17: >> >> Erlang/OTP 17 [erts-6.0] [source-07b8f44] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] [dtrace] >> >> Eshell V6.0 (abort with ^G) >> 1> c(trace_procs). >> {ok,trace_procs} >> 2> trace_procs:start(). >> trace_procs 7 Server: '<0.39.0>' >> trace_procs 10 Worker: '<0.40.0>' >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' >> >> and in R15: >> >> Erlang R15B03 (erts-5.9.3.1) [source] [64-bit] [smp:4:4] [async-threads:0] [hipe] [kernel-poll:false] >> >> Eshell V5.9.3.1 (abort with ^G) >> 1> c(trace_procs). >> {ok,trace_procs} >> 2> trace_procs:start(). >> trace_procs 7 Server: '<0.38.0>' >> trace_procs 10 Worker: '<0.39.0>' >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' >> >> What gives? >> >> Robert >> >> >> >> _______________________________________________ >> erlang-bugs mailing list >> erlang-bugs@REDACTED >> http://erlang.org/mailman/listinfo/erlang-bugs > "Installing applications can lead to corruption over time. Applications gradually write over each other's libraries, partial upgrades occur, user and system errors happen, and minute changes may be unnoticeable and difficult to fix" > > > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs > From hans@REDACTED Tue Jun 3 12:21:38 2014 From: hans@REDACTED (Hans Nilsson) Date: Tue, 3 Jun 2014 12:21:38 +0200 Subject: [erlang-bugs] BugReport_function_clause_ssh In-Reply-To: References: Message-ID: <538DA1B2.5070203@erlang.org> Hi, thanks for the report! What is "at the other end"? I'm curious because the message is not complete.... /Hans On 2014-06-03 06:18, Constantin Malikov wrote: > > Hello , friends. I want to tell you about a bug in Erlang: > > When using ssh following error occurred: > > Erlang ssh connection handler failed with reason: {function_clause, > > [{ssh_message,decode, > [<<1,0,0,0,11,0,0,0,20, > 100,105,115,99,111, > 110,110,101,99,116, > 101,100,32,98,121,32, > 117,115,101,114>>], > [{file, > "/home/konstantin/git/erl/lib/ssh/src/ssh_message.erl"}, > {line,267}]}, > {ssh_connection_handler, > generate_event,4, > [{file, > "/home/konstantin/git/erl/lib/ssh/src/ssh_connection_handler.erl"}, > {line,1204}]}, > {gen_fsm,handle_msg,7, > [{file,"gen_fsm.erl"}, > {line,505}]}, > {proc_lib, > init_p_do_apply,3, > [{file,"proc_lib.erl"}, > {line,239}]}]} > , Stacktace: [{ssh_message,decode, > [<<1,0,0,0,11,0,0,0,20,100,105,115,99,111,110,110,101,99, > 116,101,100,32,98,121,32,117,115,101,114>>], > [{file, > "/home/konstantin/git/erl/lib/ssh/src/ssh_message.erl"}, > {line,267}]}, > {ssh_connection_handler,generate_event,4, > [{file, > "/home/konstantin/git/erl/lib/ssh/src/ssh_connection_handler.erl"}, > {line,1204}]}, > {gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,505}]}, > {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}] > please report this to erlang-bugs@REDACTED > > > With best regards, > > Malikov Constantin, software developer, Eltex. > > > > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs -------------- next part -------------- An HTML attachment was scrubbed... URL: From zfsgeek@REDACTED Wed Jun 4 03:12:13 2014 From: zfsgeek@REDACTED (xyf) Date: Wed, 4 Jun 2014 09:12:13 +0800 (CST) Subject: [erlang-bugs] fix typo in ethr_aux.c Message-ID: <6d86b36c.a0ca.146646efba8.Coremail.zfsgeek@163.com> Hi, It seems there is a typo in file ethr_aux.c, function ts_event_pool(int size, ethr_ts_event **endpp) tries to allocate memory at cache line boundary, but the code wrongly detects it, please see attachments, further, you only needs to allocate extra cache_line_size -1 bytes but not full cache line, because most bytes you should skip is cache_line_size - 1, patch file ethr_aux.c.diff2 fixed it. Regards, Yifeng Xu -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: ethr_aux.c.diff Type: application/octet-stream Size: 465 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: ethr_aux.c.diff2 Type: application/octet-stream Size: 624 bytes Desc: not available URL: From sverker.eriksson@REDACTED Wed Jun 4 11:40:22 2014 From: sverker.eriksson@REDACTED (Sverker Eriksson) Date: Wed, 4 Jun 2014 11:40:22 +0200 Subject: [erlang-bugs] fix typo in ethr_aux.c In-Reply-To: <6d86b36c.a0ca.146646efba8.Coremail.zfsgeek@163.com> References: <6d86b36c.a0ca.146646efba8.Coremail.zfsgeek@163.com> Message-ID: <538EE986.8000405@erix.ericsson.se> Thank you. Will be included in 17.1. /Sverker, Erlang/OTP On 06/04/2014 03:12 AM, xyf wrote: > Hi, > > > It seems there is a typo in file ethr_aux.c, function ts_event_pool(int size, ethr_ts_event **endpp) tries to > allocate memory at cache line boundary, but the code wrongly detects it, please see attachments, > further, you only needs to allocate extra cache_line_size -1 bytes but not full cache line, because most bytes > you should skip is cache_line_size - 1, patch file ethr_aux.c.diff2 fixed it. > > > Regards, > Yifeng Xu > > From mikpelinux@REDACTED Wed Jun 4 13:12:16 2014 From: mikpelinux@REDACTED (Mikael Pettersson) Date: Wed, 4 Jun 2014 13:12:16 +0200 Subject: [erlang-bugs] Trace bug? In-Reply-To: <538D8906.70205@erlang.org> References: <538D8906.70205@erlang.org> Message-ID: <21390.65296.928594.954192@gargle.gargle.HOWL> Lukas Larsson writes: > Hello Robert and Tony, > > Thanks for reporting and tracking this down. It seems to be a bug that > was introduced in R16B. > > I've written a fix for it that probably will be part of Erlang/OTP 17.1. Do you have a pointer to this fix? We need to backport it to R16B. /Mikael > > Lukas > > On 02/06/14 17:11, Tony Rogvall wrote: > > in bif.c:1885 (r17) > > > > The code will only call the trace_send function if the name is NOT registered. > > Not sure how nor why. > > > > When NO process is registered to x (yield badarg) > > > >> erlang:trace(spawn(fun() -> x ! message end), true, [send]). > > 2> flush(). > > Shell got {trace,<0.45.0>,send,message,x} > > ok > > > > When process is registered to x: > > > > register(x, self()). > >> erlang:trace(spawn(fun() -> x ! message end), true, [send]). > > 1 > > 11> flush(). > > Shell got message > > ok > > > > Feature? > > > > ;-) > > > > /Tony > > > > > > On 2 jun 2014, at 16:50, Robert Virding wrote: > > > >> No, answers? > >> > >> Robert > >> > >> > >> > >> On 30 May 2014 23:18, Robert Virding wrote: > >> Can anyone tell me if this is a bug? If not how do I get around it in simple way? > >> > >> Robert > >> > >> > >> > >> On 27 May 2014 17:45, Robert Virding wrote: > >> We have discovered strange behaviour when tracing message sends. We turn on tracing message send for a process. In R16 and 17 it seems like there is no trace message when sending to a registered process name, while sending to a pid generates a trace message as it should. In R15 however you get a trace message both sending to a registered name and hen sending to a pid. Is this a bug or is it a new undocumented feature? > >> > >> As an example I include simple program in which worker sends a message to a registered server and the server replies by sending the worker pid. Here are outputs when running in 17: > >> > >> Erlang/OTP 17 [erts-6.0] [source-07b8f44] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] [dtrace] > >> > >> Eshell V6.0 (abort with ^G) > >> 1> c(trace_procs). > >> {ok,trace_procs} > >> 2> trace_procs:start(). > >> trace_procs 7 Server: '<0.39.0>' > >> trace_procs 10 Worker: '<0.40.0>' > >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > >> > >> and in R15: > >> > >> Erlang R15B03 (erts-5.9.3.1) [source] [64-bit] [smp:4:4] [async-threads:0] [hipe] [kernel-poll:false] > >> > >> Eshell V5.9.3.1 (abort with ^G) > >> 1> c(trace_procs). > >> {ok,trace_procs} > >> 2> trace_procs:start(). > >> trace_procs 7 Server: '<0.38.0>' > >> trace_procs 10 Worker: '<0.39.0>' > >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' > >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' > >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' > >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > >> > >> What gives? > >> > >> Robert > >> > >> > >> > >> _______________________________________________ > >> erlang-bugs mailing list > >> erlang-bugs@REDACTED > >> http://erlang.org/mailman/listinfo/erlang-bugs > > "Installing applications can lead to corruption over time. Applications gradually write over each other's libraries, partial upgrades occur, user and system errors happen, and minute changes may be unnoticeable and difficult to fix" > > > > > > > > _______________________________________________ > > erlang-bugs mailing list > > erlang-bugs@REDACTED > > http://erlang.org/mailman/listinfo/erlang-bugs > > > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs -- From lukas@REDACTED Wed Jun 4 15:26:59 2014 From: lukas@REDACTED (Lukas Larsson) Date: Wed, 4 Jun 2014 15:26:59 +0200 Subject: [erlang-bugs] Trace bug? In-Reply-To: <21390.65296.928594.954192@gargle.gargle.HOWL> References: <538D8906.70205@erlang.org> <21390.65296.928594.954192@gargle.gargle.HOWL> Message-ID: <538F1EA3.8050206@erlang.org> Hello Mikael, You can find the fix here: https://github.com/garazdawi/otp/commit/df0fb5553149aa75ad7b6f2df0802675ae25cd19 Lukas On 04/06/14 13:12, Mikael Pettersson wrote: > Lukas Larsson writes: > > Hello Robert and Tony, > > > > Thanks for reporting and tracking this down. It seems to be a bug that > > was introduced in R16B. > > > > I've written a fix for it that probably will be part of Erlang/OTP 17.1. > > Do you have a pointer to this fix? We need to backport it to R16B. > > /Mikael > > > > > Lukas > > > > On 02/06/14 17:11, Tony Rogvall wrote: > > > in bif.c:1885 (r17) > > > > > > The code will only call the trace_send function if the name is NOT registered. > > > Not sure how nor why. > > > > > > When NO process is registered to x (yield badarg) > > > > > >> erlang:trace(spawn(fun() -> x ! message end), true, [send]). > > > 2> flush(). > > > Shell got {trace,<0.45.0>,send,message,x} > > > ok > > > > > > When process is registered to x: > > > > > > register(x, self()). > > >> erlang:trace(spawn(fun() -> x ! message end), true, [send]). > > > 1 > > > 11> flush(). > > > Shell got message > > > ok > > > > > > Feature? > > > > > > ;-) > > > > > > /Tony > > > > > > > > > On 2 jun 2014, at 16:50, Robert Virding wrote: > > > > > >> No, answers? > > >> > > >> Robert > > >> > > >> > > >> > > >> On 30 May 2014 23:18, Robert Virding wrote: > > >> Can anyone tell me if this is a bug? If not how do I get around it in simple way? > > >> > > >> Robert > > >> > > >> > > >> > > >> On 27 May 2014 17:45, Robert Virding wrote: > > >> We have discovered strange behaviour when tracing message sends. We turn on tracing message send for a process. In R16 and 17 it seems like there is no trace message when sending to a registered process name, while sending to a pid generates a trace message as it should. In R15 however you get a trace message both sending to a registered name and hen sending to a pid. Is this a bug or is it a new undocumented feature? > > >> > > >> As an example I include simple program in which worker sends a message to a registered server and the server replies by sending the worker pid. Here are outputs when running in 17: > > >> > > >> Erlang/OTP 17 [erts-6.0] [source-07b8f44] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] [dtrace] > > >> > > >> Eshell V6.0 (abort with ^G) > > >> 1> c(trace_procs). > > >> {ok,trace_procs} > > >> 2> trace_procs:start(). > > >> trace_procs 7 Server: '<0.39.0>' > > >> trace_procs 10 Worker: '<0.40.0>' > > >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > > >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > > >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > > >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > > >> trace_procs 34 Message: '{trace,<0.39.0>,send,answer,<0.40.0>}' > > >> > > >> and in R15: > > >> > > >> Erlang R15B03 (erts-5.9.3.1) [source] [64-bit] [smp:4:4] [async-threads:0] [hipe] [kernel-poll:false] > > >> > > >> Eshell V5.9.3.1 (abort with ^G) > > >> 1> c(trace_procs). > > >> {ok,trace_procs} > > >> 2> trace_procs:start(). > > >> trace_procs 7 Server: '<0.38.0>' > > >> trace_procs 10 Worker: '<0.39.0>' > > >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > > >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' > > >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > > >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' > > >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > > >> trace_procs 34 Message: '{trace,<0.38.0>,send,answer,<0.39.0>}' > > >> trace_procs 34 Message: '{trace,<0.39.0>,send,{request,<0.39.0>},server}' > > >> > > >> What gives? > > >> > > >> Robert > > >> > > >> > > >> > > >> _______________________________________________ > > >> erlang-bugs mailing list > > >> erlang-bugs@REDACTED > > >> http://erlang.org/mailman/listinfo/erlang-bugs > > > "Installing applications can lead to corruption over time. Applications gradually write over each other's libraries, partial upgrades occur, user and system errors happen, and minute changes may be unnoticeable and difficult to fix" > > > > > > > > > > > > _______________________________________________ > > > erlang-bugs mailing list > > > erlang-bugs@REDACTED > > > http://erlang.org/mailman/listinfo/erlang-bugs > > > > > > > _______________________________________________ > > erlang-bugs mailing list > > erlang-bugs@REDACTED > > http://erlang.org/mailman/listinfo/erlang-bugs > From boris.muehmer@REDACTED Sat Jun 7 08:46:17 2014 From: boris.muehmer@REDACTED (=?UTF-8?Q?Boris_M=C3=BChmer?=) Date: Sat, 7 Jun 2014 08:46:17 +0200 Subject: [erlang-bugs] jinterface - javadoc generation broken? Message-ID: Today I did a (sort of automatic) build of the current maint branch (with my build scripts), when I noticed, that "make install-docs" failed with several errors at "jinterface". I haven't had a closer look at it, because I don't need the java stuff, but I just wanted to inform You about this "problem". Maybe it is just my setup? Regards Boris The rest of this mail is the output of the errors: make[4]: Entering directory `/home/FAMILY/bsmr/repositories/ github.com/bsmr-erlang/otp/lib/jinterface/doc/src' make -w --jobserver-fds=3,13 -j RELEASE_PATH="/opt/erlang/otp/git/20140607/0543/lib/erlang" release_docs_spec make[5]: Entering directory `/home/FAMILY/bsmr/repositories/ github.com/bsmr-erlang/otp/lib/jinterface/doc/src' (cd ../../java_src;javadoc -sourcepath . -d ../doc/html/java \ -windowtitle 'Java-Erlang Interface Library' com.ericsson.otp.erlang) Loading source files for package com.ericsson.otp.erlang... Constructing Javadoc information... Standard Doclet version 1.8.0_05 Building tree for all the packages and classes... Generating ../doc/html/java/com/ericsson/otp/erlang/AbstractConnection.html... ./com/ericsson/otp/erlang/AbstractConnection.java:213: warning: no @param for e public abstract void deliver(Exception e); ^ ./com/ericsson/otp/erlang/AbstractConnection.java:218: warning: no @param for msg public abstract void deliver(OtpMsg msg); ^ ./com/ericsson/otp/erlang/AbstractConnection.java:232: warning: no @param for from protected void sendBuf(final OtpErlangPid from, final String dest, ^ ./com/ericsson/otp/erlang/AbstractConnection.java:269: error: @param name not found * @param msg ^ ./com/ericsson/otp/erlang/AbstractConnection.java:276: warning: no @param for from protected void sendBuf(final OtpErlangPid from, final OtpErlangPid dest, ^ ./com/ericsson/otp/erlang/AbstractConnection.java:276: warning: no @param for payload protected void sendBuf(final OtpErlangPid from, final OtpErlangPid dest, ^ ./com/ericsson/otp/erlang/AbstractConnection.java:382: warning: no @param for from protected void sendLink(final OtpErlangPid from, final OtpErlangPid dest) ^ ./com/ericsson/otp/erlang/AbstractConnection.java:418: warning: no @param for from protected void sendUnlink(final OtpErlangPid from, final OtpErlangPid dest) ^ ./com/ericsson/otp/erlang/AbstractConnection.java:460: warning: no @param for from protected void sendExit2(final OtpErlangPid from, final OtpErlangPid dest, ^ ./com/ericsson/otp/erlang/AbstractConnection.java:42: warning: empty

tag *

^ ./com/ericsson/otp/erlang/AbstractConnection.java:181: warning: no @param for self protected AbstractConnection(final OtpLocalNode self, final OtpPeer other) ^ ./com/ericsson/otp/erlang/AbstractConnection.java:181: warning: no @param for other protected AbstractConnection(final OtpLocalNode self, final OtpPeer other) ^ ./com/ericsson/otp/erlang/AbstractConnection.java:138: warning: no @param for self protected AbstractConnection(final OtpLocalNode self, final Socket s) ^ ./com/ericsson/otp/erlang/AbstractConnection.java:138: warning: no @param for s protected AbstractConnection(final OtpLocalNode self, final Socket s) ^ Generating ../doc/html/java/com/ericsson/otp/erlang/AbstractNode.html... ./com/ericsson/otp/erlang/AbstractNode.java:246: warning: no @param for cookie public String setCookie(final String cookie) { ^ ./com/ericsson/otp/erlang/AbstractNode.java:150: warning: no @param for node protected AbstractNode(final String node) { ^ ./com/ericsson/otp/erlang/AbstractNode.java:157: warning: no @param for name protected AbstractNode(final String name, final String cookie) { ^ ./com/ericsson/otp/erlang/AbstractNode.java:157: warning: no @param for cookie protected AbstractNode(final String name, final String cookie) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/GenericQueue.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpAuthException.html... ./com/ericsson/otp/erlang/OtpAuthException.java:34: warning: no @param for s public OtpAuthException(final String s) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpConnection.html... ./com/ericsson/otp/erlang/OtpConnection.java:124: warning: no @return public int msgCount() { ^ ./com/ericsson/otp/erlang/OtpConnection.java:407: error: @param name not found * @param msg ^ ./com/ericsson/otp/erlang/OtpConnection.java:414: warning: no @param for payload public void sendBuf(final OtpErlangPid dest, final OtpOutputStream payload) ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpCookedConnection.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpEpmd.html... ./com/ericsson/otp/erlang/OtpEpmd.java:107: warning: no @param for port public static void useEpmdPort(int port) { ^ ./com/ericsson/otp/erlang/OtpEpmd.java:120: warning: no @param for node public static int lookupPort(final AbstractNode node) throws IOException { ^ ./com/ericsson/otp/erlang/OtpEpmd.java:158: warning: no @param for node public static void unPublishPort(final OtpLocalNode node) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangAtom.html... ./com/ericsson/otp/erlang/OtpErlangAtom.java:80: warning: no @param for t public OtpErlangAtom(final boolean t) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBinary.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBitstr.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBoolean.html... ./com/ericsson/otp/erlang/OtpErlangBoolean.java:52: warning: no @param for buf public OtpErlangBoolean(final OtpInputStream buf) ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangByte.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangChar.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangDecodeException.html... ./com/ericsson/otp/erlang/OtpErlangDecodeException.java:32: warning: no @param for msg public OtpErlangDecodeException(final String msg) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangDouble.html... ./com/ericsson/otp/erlang/OtpErlangDouble.java:39: warning: no @param for d public OtpErlangDouble(final double d) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangException.html... ./com/ericsson/otp/erlang/OtpErlangException.java:37: warning: no @param for msg public OtpErlangException(final String msg) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangExit.html... ./com/ericsson/otp/erlang/OtpErlangExit.java:102: warning: no @return public OtpErlangObject reason() { ^ ./com/ericsson/otp/erlang/OtpErlangExit.java:109: warning: no @return public OtpErlangPid pid() { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangExternalFun.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangFloat.html... ./com/ericsson/otp/erlang/OtpErlangFloat.java:34: warning: no @param for f public OtpErlangFloat(final float f) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangFun.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangInt.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangList.html... ./com/ericsson/otp/erlang/OtpErlangList.java:95: warning: no description for @param * @param lastTail ^ ./com/ericsson/otp/erlang/OtpErlangList.java:96: warning: no description for @throws * @throws OtpErlangException ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangList.SubList.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangLong.html... ./com/ericsson/otp/erlang/OtpErlangLong.java:54: error: @param name not found * @param val ^ ./com/ericsson/otp/erlang/OtpErlangLong.java:57: warning: no @param for v public OtpErlangLong(final BigInteger v) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangMap.html... ./com/ericsson/otp/erlang/OtpErlangMap.java:61: error: @param name not found * @param elems ^ ./com/ericsson/otp/erlang/OtpErlangMap.java:63: error: @param name not found * @param start ^ ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for keys public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, ^ ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for kstart public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, ^ ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for kcount public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, ^ ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for values public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, ^ ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for vstart public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangObject.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangObject.Hash.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangPid.html... ./com/ericsson/otp/erlang/OtpErlangPid.java:165: error: @param name not found * @param port ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangPort.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangRangeException.html... ./com/ericsson/otp/erlang/OtpErlangRangeException.java:39: warning: no @param for msg public OtpErlangRangeException(final String msg) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangRef.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangShort.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangString.html... ./com/ericsson/otp/erlang/OtpErlangString.java:193: warning: no @param for bytes public static String newString(final byte[] bytes) { ^ ./com/ericsson/otp/erlang/OtpErlangString.java:193: warning: no @return public static String newString(final byte[] bytes) { ^ ./com/ericsson/otp/erlang/OtpErlangString.java:45: error: invalid use of @return * @return an Erlang string with Unicode code units. ^ ./com/ericsson/otp/erlang/OtpErlangString.java:53: warning: no @param for list public OtpErlangString(final OtpErlangList list) ^ ./com/ericsson/otp/erlang/OtpErlangString.java:38: warning: no @param for str public OtpErlangString(final String str) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangTuple.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangUInt.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangUShort.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpException.html... ./com/ericsson/otp/erlang/OtpException.java:35: warning: no @param for msg public OtpException(final String msg) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpExternal.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpInputStream.html... ./com/ericsson/otp/erlang/OtpInputStream.java:110: warning: no @param for buf public int readN(final byte[] buf) throws OtpErlangDecodeException { ^ ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for buf public int readN(final byte[] buf, final int off, final int len) ^ ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for off public int readN(final byte[] buf, final int off, final int len) ^ ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for len public int readN(final byte[] buf, final int off, final int len) ^ ./com/ericsson/otp/erlang/OtpInputStream.java:138: warning: no @return public int peek() throws OtpErlangDecodeException { ^ ./com/ericsson/otp/erlang/OtpInputStream.java:138: warning: no @throws for com.ericsson.otp.erlang.OtpErlangDecodeException public int peek() throws OtpErlangDecodeException { ^ ./com/ericsson/otp/erlang/OtpInputStream.java:39: warning: no description for @param * @param buf ^ ./com/ericsson/otp/erlang/OtpInputStream.java:48: warning: no description for @param * @param flags ^ ./com/ericsson/otp/erlang/OtpInputStream.java:50: warning: no @param for buf public OtpInputStream(final byte[] buf, final int flags) { ^ ./com/ericsson/otp/erlang/OtpInputStream.java:59: warning: no description for @param * @param flags ^ ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for buf public OtpInputStream(final byte[] buf, final int offset, final int length, ^ ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for offset public OtpInputStream(final byte[] buf, final int offset, final int length, ^ ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for length public OtpInputStream(final byte[] buf, final int offset, final int length, ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpLocalNode.html... ./com/ericsson/otp/erlang/OtpLocalNode.java:42: warning: no @param for node protected OtpLocalNode(final String node) { ^ ./com/ericsson/otp/erlang/OtpLocalNode.java:50: warning: no @param for node protected OtpLocalNode(final String node, final String cookie) { ^ ./com/ericsson/otp/erlang/OtpLocalNode.java:50: warning: no @param for cookie protected OtpLocalNode(final String node, final String cookie) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpMbox.html... ./com/ericsson/otp/erlang/OtpMbox.java:423: error: unexpected end tag:

*

^ ./com/ericsson/otp/erlang/OtpMbox.java:427: warning: no @param for reason public void exit(final String reason) { ^ ./com/ericsson/otp/erlang/OtpMbox.java:458: warning: no @param for to public void exit(final OtpErlangPid to, final String reason) { ^ ./com/ericsson/otp/erlang/OtpMbox.java:458: warning: no @param for reason public void exit(final OtpErlangPid to, final String reason) { ^ ./com/ericsson/otp/erlang/OtpMbox.java:598: warning: no @return public boolean ping(final String node, final long timeout) { ^ ./com/ericsson/otp/erlang/OtpMbox.java:632: warning: no @param for name public OtpErlangPid whereis(final String name) { ^ ./com/ericsson/otp/erlang/OtpMbox.java:76: error: unexpected end tag:

*

^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpMsg.html... ./com/ericsson/otp/erlang/OtpMsg.java:187: warning: no @return public int type() { ^ ./com/ericsson/otp/erlang/OtpMsg.java:33: error: unknown tag: lu * The header information that is available is as follows: ^ ./com/ericsson/otp/erlang/OtpMsg.java:34: error: tag not allowed here:
  • *
  • a tag indicating the type of message ^ ./com/ericsson/otp/erlang/OtpMsg.java:35: error: tag not allowed here:
  • *
  • the intended recipient of the message, either as a ^ ./com/ericsson/otp/erlang/OtpMsg.java:37: error: tag not allowed here:
  • *
  • (sometimes) the sender of the message. Due to some eccentric ^ ./com/ericsson/otp/erlang/OtpMsg.java:40: error: unknown tag: lu * is {@link OtpMsg#regSendTag regSendTag} contain sender information. ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNode.html... ./com/ericsson/otp/erlang/OtpNode.java:304: warning: no @param for name public OtpErlangPid whereis(final String name) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNode.Acceptor.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNode.Mailboxes.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNodeStatus.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpOutputStream.html... ./com/ericsson/otp/erlang/OtpOutputStream.java:205: error: @param name not found * @param buf ^ ./com/ericsson/otp/erlang/OtpOutputStream.java:209: warning: no @param for bytes public void writeN(final byte[] bytes) { ^ ./com/ericsson/otp/erlang/OtpOutputStream.java:640: error: @param name not found * @param s ^ ./com/ericsson/otp/erlang/OtpOutputStream.java:643: warning: no @param for us public void write_ushort(final short us) { ^ ./com/ericsson/otp/erlang/OtpOutputStream.java:64: warning: no @param for size public OtpOutputStream(final int size) { ^ ./com/ericsson/otp/erlang/OtpOutputStream.java:71: warning: no @param for o public OtpOutputStream(final OtpErlangObject o) { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpPeer.html... Generating ../doc/html/java/com/ericsson/otp/erlang/OtpSelf.html... ./com/ericsson/otp/erlang/OtpSelf.java:71: warning: no @throws for java.io.IOException public OtpSelf(final String node) throws IOException { ^ ./com/ericsson/otp/erlang/OtpSelf.java:85: warning: no @throws for java.io.IOException public OtpSelf(final String node, final String cookie) throws IOException { ^ Generating ../doc/html/java/com/ericsson/otp/erlang/OtpServer.html... Generating ../doc/html/java/com/ericsson/otp/erlang/package-frame.html... Generating ../doc/html/java/com/ericsson/otp/erlang/package-summary.html... Generating ../doc/html/java/com/ericsson/otp/erlang/package-tree.html... Generating ../doc/html/java/constant-values.html... Generating ../doc/html/java/serialized-form.html... Building index for all the packages and classes... Generating ../doc/html/java/overview-tree.html... Generating ../doc/html/java/index-all.html... Generating ../doc/html/java/deprecated-list.html... Building index for all classes... Generating ../doc/html/java/allclasses-frame.html... Generating ../doc/html/java/allclasses-noframe.html... Generating ../doc/html/java/index.html... Generating ../doc/html/java/help-doc.html... 16 errors 74 warnings make[5]: *** [jdoc] Error 1 make[5]: Leaving directory `/home/FAMILY/bsmr/repositories/ github.com/bsmr-erlang/otp/lib/jinterface/doc/src' make[4]: *** [release_docs] Error 2 make[4]: Leaving directory `/home/FAMILY/bsmr/repositories/ github.com/bsmr-erlang/otp/lib/jinterface/doc/src' make[3]: *** [release_docs] Error 2 make[3]: Leaving directory `/home/FAMILY/bsmr/repositories/ github.com/bsmr-erlang/otp/lib/jinterface' make[2]: *** [release_docs] Error 2 make[2]: Leaving directory `/home/FAMILY/bsmr/repositories/ github.com/bsmr-erlang/otp/lib' make[1]: *** [release_docs] Error 2 make[1]: Leaving directory `/home/FAMILY/bsmr/repositories/ github.com/bsmr-erlang/otp' make: *** [install-docs] Error 2 -------------- next part -------------- An HTML attachment was scrubbed... URL: From vladdu55@REDACTED Sat Jun 7 22:07:23 2014 From: vladdu55@REDACTED (Vlad Dumitrescu) Date: Sat, 7 Jun 2014 22:07:23 +0200 Subject: [erlang-bugs] jinterface - javadoc generation broken? In-Reply-To: References: Message-ID: Hi Boris, I believe that you have hit an issue on Java 8: a linter is now enabled by default. Either disable it as per the link below, or use Java 7. See http://mail.openjdk.java.net/pipermail/build-infra-dev/2013-January/002899.html regards, Vlad On Sat, Jun 7, 2014 at 8:46 AM, Boris M?hmer wrote: > Today I did a (sort of automatic) build of the current maint branch (with my > build scripts), when I noticed, that "make install-docs" failed with several > errors at "jinterface". I haven't had a closer look at it, because I don't > need the java stuff, but I just wanted to inform You about this "problem". > Maybe it is just my setup? > > > Regards > Boris > > > The rest of this mail is the output of the errors: > > make[4]: Entering directory > `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib/jinterface/doc/src' > make -w --jobserver-fds=3,13 -j > RELEASE_PATH="/opt/erlang/otp/git/20140607/0543/lib/erlang" > release_docs_spec > make[5]: Entering directory > `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib/jinterface/doc/src' > (cd ../../java_src;javadoc -sourcepath . -d ../doc/html/java \ > -windowtitle 'Java-Erlang Interface Library' com.ericsson.otp.erlang) > Loading source files for package com.ericsson.otp.erlang... > Constructing Javadoc information... > Standard Doclet version 1.8.0_05 > Building tree for all the packages and classes... > Generating > ../doc/html/java/com/ericsson/otp/erlang/AbstractConnection.html... > ./com/ericsson/otp/erlang/AbstractConnection.java:213: warning: no @param > for e > public abstract void deliver(Exception e); > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:218: warning: no @param > for msg > public abstract void deliver(OtpMsg msg); > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:232: warning: no @param > for from > protected void sendBuf(final OtpErlangPid from, final String dest, > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:269: error: @param name > not found > * @param msg > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:276: warning: no @param > for from > protected void sendBuf(final OtpErlangPid from, final OtpErlangPid dest, > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:276: warning: no @param > for payload > protected void sendBuf(final OtpErlangPid from, final OtpErlangPid dest, > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:382: warning: no @param > for from > protected void sendLink(final OtpErlangPid from, final OtpErlangPid > dest) > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:418: warning: no @param > for from > protected void sendUnlink(final OtpErlangPid from, final OtpErlangPid > dest) > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:460: warning: no @param > for from > protected void sendExit2(final OtpErlangPid from, final OtpErlangPid > dest, > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:42: warning: empty

    tag > *

    > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:181: warning: no @param > for self > protected AbstractConnection(final OtpLocalNode self, final OtpPeer > other) > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:181: warning: no @param > for other > protected AbstractConnection(final OtpLocalNode self, final OtpPeer > other) > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:138: warning: no @param > for self > protected AbstractConnection(final OtpLocalNode self, final Socket s) > ^ > ./com/ericsson/otp/erlang/AbstractConnection.java:138: warning: no @param > for s > protected AbstractConnection(final OtpLocalNode self, final Socket s) > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/AbstractNode.html... > ./com/ericsson/otp/erlang/AbstractNode.java:246: warning: no @param for > cookie > public String setCookie(final String cookie) { > ^ > ./com/ericsson/otp/erlang/AbstractNode.java:150: warning: no @param for node > protected AbstractNode(final String node) { > ^ > ./com/ericsson/otp/erlang/AbstractNode.java:157: warning: no @param for name > protected AbstractNode(final String name, final String cookie) { > ^ > ./com/ericsson/otp/erlang/AbstractNode.java:157: warning: no @param for > cookie > protected AbstractNode(final String name, final String cookie) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/GenericQueue.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpAuthException.html... > ./com/ericsson/otp/erlang/OtpAuthException.java:34: warning: no @param for s > public OtpAuthException(final String s) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpConnection.html... > ./com/ericsson/otp/erlang/OtpConnection.java:124: warning: no @return > public int msgCount() { > ^ > ./com/ericsson/otp/erlang/OtpConnection.java:407: error: @param name not > found > * @param msg > ^ > ./com/ericsson/otp/erlang/OtpConnection.java:414: warning: no @param for > payload > public void sendBuf(final OtpErlangPid dest, final OtpOutputStream > payload) > ^ > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpCookedConnection.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpEpmd.html... > ./com/ericsson/otp/erlang/OtpEpmd.java:107: warning: no @param for port > public static void useEpmdPort(int port) { > ^ > ./com/ericsson/otp/erlang/OtpEpmd.java:120: warning: no @param for node > public static int lookupPort(final AbstractNode node) throws IOException > { > ^ > ./com/ericsson/otp/erlang/OtpEpmd.java:158: warning: no @param for node > public static void unPublishPort(final OtpLocalNode node) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangAtom.html... > ./com/ericsson/otp/erlang/OtpErlangAtom.java:80: warning: no @param for t > public OtpErlangAtom(final boolean t) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBinary.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBitstr.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBoolean.html... > ./com/ericsson/otp/erlang/OtpErlangBoolean.java:52: warning: no @param for > buf > public OtpErlangBoolean(final OtpInputStream buf) > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangByte.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangChar.html... > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangDecodeException.html... > ./com/ericsson/otp/erlang/OtpErlangDecodeException.java:32: warning: no > @param for msg > public OtpErlangDecodeException(final String msg) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangDouble.html... > ./com/ericsson/otp/erlang/OtpErlangDouble.java:39: warning: no @param for d > public OtpErlangDouble(final double d) { > ^ > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangException.html... > ./com/ericsson/otp/erlang/OtpErlangException.java:37: warning: no @param for > msg > public OtpErlangException(final String msg) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangExit.html... > ./com/ericsson/otp/erlang/OtpErlangExit.java:102: warning: no @return > public OtpErlangObject reason() { > ^ > ./com/ericsson/otp/erlang/OtpErlangExit.java:109: warning: no @return > public OtpErlangPid pid() { > ^ > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangExternalFun.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangFloat.html... > ./com/ericsson/otp/erlang/OtpErlangFloat.java:34: warning: no @param for f > public OtpErlangFloat(final float f) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangFun.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangInt.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangList.html... > ./com/ericsson/otp/erlang/OtpErlangList.java:95: warning: no description for > @param > * @param lastTail > ^ > ./com/ericsson/otp/erlang/OtpErlangList.java:96: warning: no description for > @throws > * @throws OtpErlangException > ^ > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangList.SubList.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangLong.html... > ./com/ericsson/otp/erlang/OtpErlangLong.java:54: error: @param name not > found > * @param val > ^ > ./com/ericsson/otp/erlang/OtpErlangLong.java:57: warning: no @param for v > public OtpErlangLong(final BigInteger v) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangMap.html... > ./com/ericsson/otp/erlang/OtpErlangMap.java:61: error: @param name not found > * @param elems > ^ > ./com/ericsson/otp/erlang/OtpErlangMap.java:63: error: @param name not found > * @param start > ^ > ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for keys > public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, > ^ > ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for > kstart > public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, > ^ > ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for > kcount > public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, > ^ > ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for > values > public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, > ^ > ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for > vstart > public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangObject.html... > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangObject.Hash.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangPid.html... > ./com/ericsson/otp/erlang/OtpErlangPid.java:165: error: @param name not > found > * @param port > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangPort.html... > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangRangeException.html... > ./com/ericsson/otp/erlang/OtpErlangRangeException.java:39: warning: no > @param for msg > public OtpErlangRangeException(final String msg) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangRef.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangShort.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangString.html... > ./com/ericsson/otp/erlang/OtpErlangString.java:193: warning: no @param for > bytes > public static String newString(final byte[] bytes) { > ^ > ./com/ericsson/otp/erlang/OtpErlangString.java:193: warning: no @return > public static String newString(final byte[] bytes) { > ^ > ./com/ericsson/otp/erlang/OtpErlangString.java:45: error: invalid use of > @return > * @return an Erlang string with Unicode code units. > ^ > ./com/ericsson/otp/erlang/OtpErlangString.java:53: warning: no @param for > list > public OtpErlangString(final OtpErlangList list) > ^ > ./com/ericsson/otp/erlang/OtpErlangString.java:38: warning: no @param for > str > public OtpErlangString(final String str) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangTuple.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangUInt.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangUShort.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpException.html... > ./com/ericsson/otp/erlang/OtpException.java:35: warning: no @param for msg > public OtpException(final String msg) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpExternal.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpInputStream.html... > ./com/ericsson/otp/erlang/OtpInputStream.java:110: warning: no @param for > buf > public int readN(final byte[] buf) throws OtpErlangDecodeException { > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for > buf > public int readN(final byte[] buf, final int off, final int len) > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for > off > public int readN(final byte[] buf, final int off, final int len) > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for > len > public int readN(final byte[] buf, final int off, final int len) > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:138: warning: no @return > public int peek() throws OtpErlangDecodeException { > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:138: warning: no @throws for > com.ericsson.otp.erlang.OtpErlangDecodeException > public int peek() throws OtpErlangDecodeException { > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:39: warning: no description > for @param > * @param buf > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:48: warning: no description > for @param > * @param flags > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:50: warning: no @param for buf > public OtpInputStream(final byte[] buf, final int flags) { > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:59: warning: no description > for @param > * @param flags > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for buf > public OtpInputStream(final byte[] buf, final int offset, final int > length, > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for > offset > public OtpInputStream(final byte[] buf, final int offset, final int > length, > ^ > ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for > length > public OtpInputStream(final byte[] buf, final int offset, final int > length, > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpLocalNode.html... > ./com/ericsson/otp/erlang/OtpLocalNode.java:42: warning: no @param for node > protected OtpLocalNode(final String node) { > ^ > ./com/ericsson/otp/erlang/OtpLocalNode.java:50: warning: no @param for node > protected OtpLocalNode(final String node, final String cookie) { > ^ > ./com/ericsson/otp/erlang/OtpLocalNode.java:50: warning: no @param for > cookie > protected OtpLocalNode(final String node, final String cookie) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpMbox.html... > ./com/ericsson/otp/erlang/OtpMbox.java:423: error: unexpected end tag:

    > *

    > ^ > ./com/ericsson/otp/erlang/OtpMbox.java:427: warning: no @param for reason > public void exit(final String reason) { > ^ > ./com/ericsson/otp/erlang/OtpMbox.java:458: warning: no @param for to > public void exit(final OtpErlangPid to, final String reason) { > ^ > ./com/ericsson/otp/erlang/OtpMbox.java:458: warning: no @param for reason > public void exit(final OtpErlangPid to, final String reason) { > ^ > ./com/ericsson/otp/erlang/OtpMbox.java:598: warning: no @return > public boolean ping(final String node, final long timeout) { > ^ > ./com/ericsson/otp/erlang/OtpMbox.java:632: warning: no @param for name > public OtpErlangPid whereis(final String name) { > ^ > ./com/ericsson/otp/erlang/OtpMbox.java:76: error: unexpected end tag:

    > *

    > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpMsg.html... > ./com/ericsson/otp/erlang/OtpMsg.java:187: warning: no @return > public int type() { > ^ > ./com/ericsson/otp/erlang/OtpMsg.java:33: error: unknown tag: lu > * The header information that is available is as follows: > ^ > ./com/ericsson/otp/erlang/OtpMsg.java:34: error: tag not allowed here:
  • > *
  • a tag indicating the type of message > ^ > ./com/ericsson/otp/erlang/OtpMsg.java:35: error: tag not allowed here:
  • > *
  • the intended recipient of the message, either as a > ^ > ./com/ericsson/otp/erlang/OtpMsg.java:37: error: tag not allowed here:
  • > *
  • (sometimes) the sender of the message. Due to some eccentric > ^ > ./com/ericsson/otp/erlang/OtpMsg.java:40: error: unknown tag: lu > * is {@link OtpMsg#regSendTag regSendTag} contain sender information. > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNode.html... > ./com/ericsson/otp/erlang/OtpNode.java:304: warning: no @param for name > public OtpErlangPid whereis(final String name) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNode.Acceptor.html... > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpNode.Mailboxes.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNodeStatus.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpOutputStream.html... > ./com/ericsson/otp/erlang/OtpOutputStream.java:205: error: @param name not > found > * @param buf > ^ > ./com/ericsson/otp/erlang/OtpOutputStream.java:209: warning: no @param for > bytes > public void writeN(final byte[] bytes) { > ^ > ./com/ericsson/otp/erlang/OtpOutputStream.java:640: error: @param name not > found > * @param s > ^ > ./com/ericsson/otp/erlang/OtpOutputStream.java:643: warning: no @param for > us > public void write_ushort(final short us) { > ^ > ./com/ericsson/otp/erlang/OtpOutputStream.java:64: warning: no @param for > size > public OtpOutputStream(final int size) { > ^ > ./com/ericsson/otp/erlang/OtpOutputStream.java:71: warning: no @param for o > public OtpOutputStream(final OtpErlangObject o) { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpPeer.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpSelf.html... > ./com/ericsson/otp/erlang/OtpSelf.java:71: warning: no @throws for > java.io.IOException > public OtpSelf(final String node) throws IOException { > ^ > ./com/ericsson/otp/erlang/OtpSelf.java:85: warning: no @throws for > java.io.IOException > public OtpSelf(final String node, final String cookie) throws > IOException { > ^ > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpServer.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/package-frame.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/package-summary.html... > Generating ../doc/html/java/com/ericsson/otp/erlang/package-tree.html... > Generating ../doc/html/java/constant-values.html... > Generating ../doc/html/java/serialized-form.html... > Building index for all the packages and classes... > Generating ../doc/html/java/overview-tree.html... > Generating ../doc/html/java/index-all.html... > Generating ../doc/html/java/deprecated-list.html... > Building index for all classes... > Generating ../doc/html/java/allclasses-frame.html... > Generating ../doc/html/java/allclasses-noframe.html... > Generating ../doc/html/java/index.html... > Generating ../doc/html/java/help-doc.html... > 16 errors > 74 warnings > make[5]: *** [jdoc] Error 1 > make[5]: Leaving directory > `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib/jinterface/doc/src' > make[4]: *** [release_docs] Error 2 > make[4]: Leaving directory > `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib/jinterface/doc/src' > make[3]: *** [release_docs] Error 2 > make[3]: Leaving directory > `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib/jinterface' > make[2]: *** [release_docs] Error 2 > make[2]: Leaving directory > `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib' > make[1]: *** [release_docs] Error 2 > make[1]: Leaving directory > `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp' > make: *** [install-docs] Error 2 > > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs > From boris.muehmer@REDACTED Sat Jun 7 22:35:17 2014 From: boris.muehmer@REDACTED (=?UTF-8?Q?Boris_M=C3=BChmer?=) Date: Sat, 7 Jun 2014 22:35:17 +0200 Subject: [erlang-bugs] jinterface - javadoc generation broken? In-Reply-To: References: Message-ID: Hi Vlad, I was almost certain, that You will answer my question to the "java problem"... ;-) You were right, I switched my java SDK to 1.7 (within my "development environment"), started my Erlang build script, and the errors "vanished". Thank You, for the hints! Regards, Boris 2014-06-07 22:07 GMT+02:00 Vlad Dumitrescu : > Hi Boris, > > I believe that you have hit an issue on Java 8: a linter is now > enabled by default. Either disable it as per the link below, or use > Java 7. > > See > http://mail.openjdk.java.net/pipermail/build-infra-dev/2013-January/002899.html > > regards, > Vlad > > > On Sat, Jun 7, 2014 at 8:46 AM, Boris M?hmer > wrote: > > Today I did a (sort of automatic) build of the current maint branch > (with my > > build scripts), when I noticed, that "make install-docs" failed with > several > > errors at "jinterface". I haven't had a closer look at it, because I > don't > > need the java stuff, but I just wanted to inform You about this > "problem". > > Maybe it is just my setup? > > > > > > Regards > > Boris > > > > > > The rest of this mail is the output of the errors: > > > > make[4]: Entering directory > > `/home/FAMILY/bsmr/repositories/ > github.com/bsmr-erlang/otp/lib/jinterface/doc/src' > > make -w --jobserver-fds=3,13 -j > > RELEASE_PATH="/opt/erlang/otp/git/20140607/0543/lib/erlang" > > release_docs_spec > > make[5]: Entering directory > > `/home/FAMILY/bsmr/repositories/ > github.com/bsmr-erlang/otp/lib/jinterface/doc/src' > > (cd ../../java_src;javadoc -sourcepath . -d ../doc/html/java \ > > -windowtitle 'Java-Erlang Interface Library' com.ericsson.otp.erlang) > > Loading source files for package com.ericsson.otp.erlang... > > Constructing Javadoc information... > > Standard Doclet version 1.8.0_05 > > Building tree for all the packages and classes... > > Generating > > ../doc/html/java/com/ericsson/otp/erlang/AbstractConnection.html... > > ./com/ericsson/otp/erlang/AbstractConnection.java:213: warning: no @param > > for e > > public abstract void deliver(Exception e); > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:218: warning: no @param > > for msg > > public abstract void deliver(OtpMsg msg); > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:232: warning: no @param > > for from > > protected void sendBuf(final OtpErlangPid from, final String dest, > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:269: error: @param name > > not found > > * @param msg > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:276: warning: no @param > > for from > > protected void sendBuf(final OtpErlangPid from, final OtpErlangPid > dest, > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:276: warning: no @param > > for payload > > protected void sendBuf(final OtpErlangPid from, final OtpErlangPid > dest, > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:382: warning: no @param > > for from > > protected void sendLink(final OtpErlangPid from, final OtpErlangPid > > dest) > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:418: warning: no @param > > for from > > protected void sendUnlink(final OtpErlangPid from, final OtpErlangPid > > dest) > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:460: warning: no @param > > for from > > protected void sendExit2(final OtpErlangPid from, final OtpErlangPid > > dest, > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:42: warning: empty

    > tag > > *

    > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:181: warning: no @param > > for self > > protected AbstractConnection(final OtpLocalNode self, final OtpPeer > > other) > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:181: warning: no @param > > for other > > protected AbstractConnection(final OtpLocalNode self, final OtpPeer > > other) > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:138: warning: no @param > > for self > > protected AbstractConnection(final OtpLocalNode self, final Socket s) > > ^ > > ./com/ericsson/otp/erlang/AbstractConnection.java:138: warning: no @param > > for s > > protected AbstractConnection(final OtpLocalNode self, final Socket s) > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/AbstractNode.html... > > ./com/ericsson/otp/erlang/AbstractNode.java:246: warning: no @param for > > cookie > > public String setCookie(final String cookie) { > > ^ > > ./com/ericsson/otp/erlang/AbstractNode.java:150: warning: no @param for > node > > protected AbstractNode(final String node) { > > ^ > > ./com/ericsson/otp/erlang/AbstractNode.java:157: warning: no @param for > name > > protected AbstractNode(final String name, final String cookie) { > > ^ > > ./com/ericsson/otp/erlang/AbstractNode.java:157: warning: no @param for > > cookie > > protected AbstractNode(final String name, final String cookie) { > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/GenericQueue.html... > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpAuthException.html... > > ./com/ericsson/otp/erlang/OtpAuthException.java:34: warning: no @param > for s > > public OtpAuthException(final String s) { > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpConnection.html... > > ./com/ericsson/otp/erlang/OtpConnection.java:124: warning: no @return > > public int msgCount() { > > ^ > > ./com/ericsson/otp/erlang/OtpConnection.java:407: error: @param name not > > found > > * @param msg > > ^ > > ./com/ericsson/otp/erlang/OtpConnection.java:414: warning: no @param for > > payload > > public void sendBuf(final OtpErlangPid dest, final OtpOutputStream > > payload) > > ^ > > Generating > > ../doc/html/java/com/ericsson/otp/erlang/OtpCookedConnection.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpEpmd.html... > > ./com/ericsson/otp/erlang/OtpEpmd.java:107: warning: no @param for port > > public static void useEpmdPort(int port) { > > ^ > > ./com/ericsson/otp/erlang/OtpEpmd.java:120: warning: no @param for node > > public static int lookupPort(final AbstractNode node) throws > IOException > > { > > ^ > > ./com/ericsson/otp/erlang/OtpEpmd.java:158: warning: no @param for node > > public static void unPublishPort(final OtpLocalNode node) { > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangAtom.html... > > ./com/ericsson/otp/erlang/OtpErlangAtom.java:80: warning: no @param for t > > public OtpErlangAtom(final boolean t) { > > ^ > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBinary.html... > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBitstr.html... > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBoolean.html... > > ./com/ericsson/otp/erlang/OtpErlangBoolean.java:52: warning: no @param > for > > buf > > public OtpErlangBoolean(final OtpInputStream buf) > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangByte.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangChar.html... > > Generating > > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangDecodeException.html... > > ./com/ericsson/otp/erlang/OtpErlangDecodeException.java:32: warning: no > > @param for msg > > public OtpErlangDecodeException(final String msg) { > > ^ > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangDouble.html... > > ./com/ericsson/otp/erlang/OtpErlangDouble.java:39: warning: no @param > for d > > public OtpErlangDouble(final double d) { > > ^ > > Generating > > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangException.html... > > ./com/ericsson/otp/erlang/OtpErlangException.java:37: warning: no @param > for > > msg > > public OtpErlangException(final String msg) { > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangExit.html... > > ./com/ericsson/otp/erlang/OtpErlangExit.java:102: warning: no @return > > public OtpErlangObject reason() { > > ^ > > ./com/ericsson/otp/erlang/OtpErlangExit.java:109: warning: no @return > > public OtpErlangPid pid() { > > ^ > > Generating > > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangExternalFun.html... > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangFloat.html... > > ./com/ericsson/otp/erlang/OtpErlangFloat.java:34: warning: no @param for > f > > public OtpErlangFloat(final float f) { > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangFun.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangInt.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangList.html... > > ./com/ericsson/otp/erlang/OtpErlangList.java:95: warning: no description > for > > @param > > * @param lastTail > > ^ > > ./com/ericsson/otp/erlang/OtpErlangList.java:96: warning: no description > for > > @throws > > * @throws OtpErlangException > > ^ > > Generating > > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangList.SubList.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangLong.html... > > ./com/ericsson/otp/erlang/OtpErlangLong.java:54: error: @param name not > > found > > * @param val > > ^ > > ./com/ericsson/otp/erlang/OtpErlangLong.java:57: warning: no @param for v > > public OtpErlangLong(final BigInteger v) { > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangMap.html... > > ./com/ericsson/otp/erlang/OtpErlangMap.java:61: error: @param name not > found > > * @param elems > > ^ > > ./com/ericsson/otp/erlang/OtpErlangMap.java:63: error: @param name not > found > > * @param start > > ^ > > ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for > keys > > public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, > > ^ > > ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for > > kstart > > public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, > > ^ > > ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for > > kcount > > public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, > > ^ > > ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for > > values > > public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, > > ^ > > ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for > > vstart > > public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, > > ^ > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangObject.html... > > Generating > > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangObject.Hash.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangPid.html... > > ./com/ericsson/otp/erlang/OtpErlangPid.java:165: error: @param name not > > found > > * @param port > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangPort.html... > > Generating > > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangRangeException.html... > > ./com/ericsson/otp/erlang/OtpErlangRangeException.java:39: warning: no > > @param for msg > > public OtpErlangRangeException(final String msg) { > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangRef.html... > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangShort.html... > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangString.html... > > ./com/ericsson/otp/erlang/OtpErlangString.java:193: warning: no @param > for > > bytes > > public static String newString(final byte[] bytes) { > > ^ > > ./com/ericsson/otp/erlang/OtpErlangString.java:193: warning: no @return > > public static String newString(final byte[] bytes) { > > ^ > > ./com/ericsson/otp/erlang/OtpErlangString.java:45: error: invalid use of > > @return > > * @return an Erlang string with Unicode code units. > > ^ > > ./com/ericsson/otp/erlang/OtpErlangString.java:53: warning: no @param for > > list > > public OtpErlangString(final OtpErlangList list) > > ^ > > ./com/ericsson/otp/erlang/OtpErlangString.java:38: warning: no @param for > > str > > public OtpErlangString(final String str) { > > ^ > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangTuple.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangUInt.html... > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpErlangUShort.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpException.html... > > ./com/ericsson/otp/erlang/OtpException.java:35: warning: no @param for > msg > > public OtpException(final String msg) { > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpExternal.html... > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpInputStream.html... > > ./com/ericsson/otp/erlang/OtpInputStream.java:110: warning: no @param for > > buf > > public int readN(final byte[] buf) throws OtpErlangDecodeException { > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for > > buf > > public int readN(final byte[] buf, final int off, final int len) > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for > > off > > public int readN(final byte[] buf, final int off, final int len) > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for > > len > > public int readN(final byte[] buf, final int off, final int len) > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:138: warning: no @return > > public int peek() throws OtpErlangDecodeException { > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:138: warning: no @throws > for > > com.ericsson.otp.erlang.OtpErlangDecodeException > > public int peek() throws OtpErlangDecodeException { > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:39: warning: no description > > for @param > > * @param buf > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:48: warning: no description > > for @param > > * @param flags > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:50: warning: no @param for > buf > > public OtpInputStream(final byte[] buf, final int flags) { > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:59: warning: no description > > for @param > > * @param flags > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for > buf > > public OtpInputStream(final byte[] buf, final int offset, final int > > length, > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for > > offset > > public OtpInputStream(final byte[] buf, final int offset, final int > > length, > > ^ > > ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for > > length > > public OtpInputStream(final byte[] buf, final int offset, final int > > length, > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpLocalNode.html... > > ./com/ericsson/otp/erlang/OtpLocalNode.java:42: warning: no @param for > node > > protected OtpLocalNode(final String node) { > > ^ > > ./com/ericsson/otp/erlang/OtpLocalNode.java:50: warning: no @param for > node > > protected OtpLocalNode(final String node, final String cookie) { > > ^ > > ./com/ericsson/otp/erlang/OtpLocalNode.java:50: warning: no @param for > > cookie > > protected OtpLocalNode(final String node, final String cookie) { > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpMbox.html... > > ./com/ericsson/otp/erlang/OtpMbox.java:423: error: unexpected end tag: >

    > > *

    > > ^ > > ./com/ericsson/otp/erlang/OtpMbox.java:427: warning: no @param for reason > > public void exit(final String reason) { > > ^ > > ./com/ericsson/otp/erlang/OtpMbox.java:458: warning: no @param for to > > public void exit(final OtpErlangPid to, final String reason) { > > ^ > > ./com/ericsson/otp/erlang/OtpMbox.java:458: warning: no @param for reason > > public void exit(final OtpErlangPid to, final String reason) { > > ^ > > ./com/ericsson/otp/erlang/OtpMbox.java:598: warning: no @return > > public boolean ping(final String node, final long timeout) { > > ^ > > ./com/ericsson/otp/erlang/OtpMbox.java:632: warning: no @param for name > > public OtpErlangPid whereis(final String name) { > > ^ > > ./com/ericsson/otp/erlang/OtpMbox.java:76: error: unexpected end tag: >

    > > *

    > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpMsg.html... > > ./com/ericsson/otp/erlang/OtpMsg.java:187: warning: no @return > > public int type() { > > ^ > > ./com/ericsson/otp/erlang/OtpMsg.java:33: error: unknown tag: lu > > * The header information that is available is as follows: > > ^ > > ./com/ericsson/otp/erlang/OtpMsg.java:34: error: tag not allowed here: >
  • > > *
  • a tag indicating the type of message > > ^ > > ./com/ericsson/otp/erlang/OtpMsg.java:35: error: tag not allowed here: >
  • > > *
  • the intended recipient of the message, either as a > > ^ > > ./com/ericsson/otp/erlang/OtpMsg.java:37: error: tag not allowed here: >
  • > > *
  • (sometimes) the sender of the message. Due to some eccentric > > ^ > > ./com/ericsson/otp/erlang/OtpMsg.java:40: error: unknown tag: lu > > * is {@link OtpMsg#regSendTag regSendTag} contain sender information. > > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNode.html... > > ./com/ericsson/otp/erlang/OtpNode.java:304: warning: no @param for name > > public OtpErlangPid whereis(final String name) { > > ^ > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpNode.Acceptor.html... > > Generating > > ../doc/html/java/com/ericsson/otp/erlang/OtpNode.Mailboxes.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNodeStatus.html... > > Generating > ../doc/html/java/com/ericsson/otp/erlang/OtpOutputStream.html... > > ./com/ericsson/otp/erlang/OtpOutputStream.java:205: error: @param name > not > > found > > * @param buf > > ^ > > ./com/ericsson/otp/erlang/OtpOutputStream.java:209: warning: no @param > for > > bytes > > public void writeN(final byte[] bytes) { > > ^ > > ./com/ericsson/otp/erlang/OtpOutputStream.java:640: error: @param name > not > > found > > * @param s > > ^ > > ./com/ericsson/otp/erlang/OtpOutputStream.java:643: warning: no @param > for > > us > > public void write_ushort(final short us) { > > ^ > > ./com/ericsson/otp/erlang/OtpOutputStream.java:64: warning: no @param for > > size > > public OtpOutputStream(final int size) { > > ^ > > ./com/ericsson/otp/erlang/OtpOutputStream.java:71: warning: no @param > for o > > public OtpOutputStream(final OtpErlangObject o) { > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpPeer.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpSelf.html... > > ./com/ericsson/otp/erlang/OtpSelf.java:71: warning: no @throws for > > java.io.IOException > > public OtpSelf(final String node) throws IOException { > > ^ > > ./com/ericsson/otp/erlang/OtpSelf.java:85: warning: no @throws for > > java.io.IOException > > public OtpSelf(final String node, final String cookie) throws > > IOException { > > ^ > > Generating ../doc/html/java/com/ericsson/otp/erlang/OtpServer.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/package-frame.html... > > Generating > ../doc/html/java/com/ericsson/otp/erlang/package-summary.html... > > Generating ../doc/html/java/com/ericsson/otp/erlang/package-tree.html... > > Generating ../doc/html/java/constant-values.html... > > Generating ../doc/html/java/serialized-form.html... > > Building index for all the packages and classes... > > Generating ../doc/html/java/overview-tree.html... > > Generating ../doc/html/java/index-all.html... > > Generating ../doc/html/java/deprecated-list.html... > > Building index for all classes... > > Generating ../doc/html/java/allclasses-frame.html... > > Generating ../doc/html/java/allclasses-noframe.html... > > Generating ../doc/html/java/index.html... > > Generating ../doc/html/java/help-doc.html... > > 16 errors > > 74 warnings > > make[5]: *** [jdoc] Error 1 > > make[5]: Leaving directory > > `/home/FAMILY/bsmr/repositories/ > github.com/bsmr-erlang/otp/lib/jinterface/doc/src' > > make[4]: *** [release_docs] Error 2 > > make[4]: Leaving directory > > `/home/FAMILY/bsmr/repositories/ > github.com/bsmr-erlang/otp/lib/jinterface/doc/src' > > make[3]: *** [release_docs] Error 2 > > make[3]: Leaving directory > > `/home/FAMILY/bsmr/repositories/ > github.com/bsmr-erlang/otp/lib/jinterface' > > make[2]: *** [release_docs] Error 2 > > make[2]: Leaving directory > > `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib' > > make[1]: *** [release_docs] Error 2 > > make[1]: Leaving directory > > `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp' > > make: *** [install-docs] Error 2 > > > > > > _______________________________________________ > > erlang-bugs mailing list > > erlang-bugs@REDACTED > > http://erlang.org/mailman/listinfo/erlang-bugs > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From n.oxyde@REDACTED Sun Jun 8 12:39:51 2014 From: n.oxyde@REDACTED (Anthony Ramine) Date: Sun, 8 Jun 2014 12:39:51 +0200 Subject: [erlang-bugs] jinterface - javadoc generation broken? In-Reply-To: References: Message-ID: <331D9741-4AC9-4FDC-AAD0-B314037E5172@gmail.com> Hello, I fixed the errors and left the warnings alone: https://github.com/erlang/otp/pull/392 Regards, -- Anthony Ramine Le 7 juin 2014 ? 22:07, Vlad Dumitrescu a ?crit : > Hi Boris, > > I believe that you have hit an issue on Java 8: a linter is now > enabled by default. Either disable it as per the link below, or use > Java 7. > > See http://mail.openjdk.java.net/pipermail/build-infra-dev/2013-January/002899.html > > regards, > Vlad > > > On Sat, Jun 7, 2014 at 8:46 AM, Boris M?hmer wrote: >> Today I did a (sort of automatic) build of the current maint branch (with my >> build scripts), when I noticed, that "make install-docs" failed with several >> errors at "jinterface". I haven't had a closer look at it, because I don't >> need the java stuff, but I just wanted to inform You about this "problem". >> Maybe it is just my setup? >> >> >> Regards >> Boris >> >> >> The rest of this mail is the output of the errors: >> >> make[4]: Entering directory >> `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib/jinterface/doc/src' >> make -w --jobserver-fds=3,13 -j >> RELEASE_PATH="/opt/erlang/otp/git/20140607/0543/lib/erlang" >> release_docs_spec >> make[5]: Entering directory >> `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib/jinterface/doc/src' >> (cd ../../java_src;javadoc -sourcepath . -d ../doc/html/java \ >> -windowtitle 'Java-Erlang Interface Library' com.ericsson.otp.erlang) >> Loading source files for package com.ericsson.otp.erlang... >> Constructing Javadoc information... >> Standard Doclet version 1.8.0_05 >> Building tree for all the packages and classes... >> Generating >> ../doc/html/java/com/ericsson/otp/erlang/AbstractConnection.html... >> ./com/ericsson/otp/erlang/AbstractConnection.java:213: warning: no @param >> for e >> public abstract void deliver(Exception e); >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:218: warning: no @param >> for msg >> public abstract void deliver(OtpMsg msg); >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:232: warning: no @param >> for from >> protected void sendBuf(final OtpErlangPid from, final String dest, >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:269: error: @param name >> not found >> * @param msg >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:276: warning: no @param >> for from >> protected void sendBuf(final OtpErlangPid from, final OtpErlangPid dest, >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:276: warning: no @param >> for payload >> protected void sendBuf(final OtpErlangPid from, final OtpErlangPid dest, >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:382: warning: no @param >> for from >> protected void sendLink(final OtpErlangPid from, final OtpErlangPid >> dest) >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:418: warning: no @param >> for from >> protected void sendUnlink(final OtpErlangPid from, final OtpErlangPid >> dest) >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:460: warning: no @param >> for from >> protected void sendExit2(final OtpErlangPid from, final OtpErlangPid >> dest, >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:42: warning: empty

    tag >> *

    >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:181: warning: no @param >> for self >> protected AbstractConnection(final OtpLocalNode self, final OtpPeer >> other) >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:181: warning: no @param >> for other >> protected AbstractConnection(final OtpLocalNode self, final OtpPeer >> other) >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:138: warning: no @param >> for self >> protected AbstractConnection(final OtpLocalNode self, final Socket s) >> ^ >> ./com/ericsson/otp/erlang/AbstractConnection.java:138: warning: no @param >> for s >> protected AbstractConnection(final OtpLocalNode self, final Socket s) >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/AbstractNode.html... >> ./com/ericsson/otp/erlang/AbstractNode.java:246: warning: no @param for >> cookie >> public String setCookie(final String cookie) { >> ^ >> ./com/ericsson/otp/erlang/AbstractNode.java:150: warning: no @param for node >> protected AbstractNode(final String node) { >> ^ >> ./com/ericsson/otp/erlang/AbstractNode.java:157: warning: no @param for name >> protected AbstractNode(final String name, final String cookie) { >> ^ >> ./com/ericsson/otp/erlang/AbstractNode.java:157: warning: no @param for >> cookie >> protected AbstractNode(final String name, final String cookie) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/GenericQueue.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpAuthException.html... >> ./com/ericsson/otp/erlang/OtpAuthException.java:34: warning: no @param for s >> public OtpAuthException(final String s) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpConnection.html... >> ./com/ericsson/otp/erlang/OtpConnection.java:124: warning: no @return >> public int msgCount() { >> ^ >> ./com/ericsson/otp/erlang/OtpConnection.java:407: error: @param name not >> found >> * @param msg >> ^ >> ./com/ericsson/otp/erlang/OtpConnection.java:414: warning: no @param for >> payload >> public void sendBuf(final OtpErlangPid dest, final OtpOutputStream >> payload) >> ^ >> Generating >> ../doc/html/java/com/ericsson/otp/erlang/OtpCookedConnection.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpEpmd.html... >> ./com/ericsson/otp/erlang/OtpEpmd.java:107: warning: no @param for port >> public static void useEpmdPort(int port) { >> ^ >> ./com/ericsson/otp/erlang/OtpEpmd.java:120: warning: no @param for node >> public static int lookupPort(final AbstractNode node) throws IOException >> { >> ^ >> ./com/ericsson/otp/erlang/OtpEpmd.java:158: warning: no @param for node >> public static void unPublishPort(final OtpLocalNode node) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangAtom.html... >> ./com/ericsson/otp/erlang/OtpErlangAtom.java:80: warning: no @param for t >> public OtpErlangAtom(final boolean t) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBinary.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBitstr.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangBoolean.html... >> ./com/ericsson/otp/erlang/OtpErlangBoolean.java:52: warning: no @param for >> buf >> public OtpErlangBoolean(final OtpInputStream buf) >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangByte.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangChar.html... >> Generating >> ../doc/html/java/com/ericsson/otp/erlang/OtpErlangDecodeException.html... >> ./com/ericsson/otp/erlang/OtpErlangDecodeException.java:32: warning: no >> @param for msg >> public OtpErlangDecodeException(final String msg) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangDouble.html... >> ./com/ericsson/otp/erlang/OtpErlangDouble.java:39: warning: no @param for d >> public OtpErlangDouble(final double d) { >> ^ >> Generating >> ../doc/html/java/com/ericsson/otp/erlang/OtpErlangException.html... >> ./com/ericsson/otp/erlang/OtpErlangException.java:37: warning: no @param for >> msg >> public OtpErlangException(final String msg) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangExit.html... >> ./com/ericsson/otp/erlang/OtpErlangExit.java:102: warning: no @return >> public OtpErlangObject reason() { >> ^ >> ./com/ericsson/otp/erlang/OtpErlangExit.java:109: warning: no @return >> public OtpErlangPid pid() { >> ^ >> Generating >> ../doc/html/java/com/ericsson/otp/erlang/OtpErlangExternalFun.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangFloat.html... >> ./com/ericsson/otp/erlang/OtpErlangFloat.java:34: warning: no @param for f >> public OtpErlangFloat(final float f) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangFun.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangInt.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangList.html... >> ./com/ericsson/otp/erlang/OtpErlangList.java:95: warning: no description for >> @param >> * @param lastTail >> ^ >> ./com/ericsson/otp/erlang/OtpErlangList.java:96: warning: no description for >> @throws >> * @throws OtpErlangException >> ^ >> Generating >> ../doc/html/java/com/ericsson/otp/erlang/OtpErlangList.SubList.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangLong.html... >> ./com/ericsson/otp/erlang/OtpErlangLong.java:54: error: @param name not >> found >> * @param val >> ^ >> ./com/ericsson/otp/erlang/OtpErlangLong.java:57: warning: no @param for v >> public OtpErlangLong(final BigInteger v) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangMap.html... >> ./com/ericsson/otp/erlang/OtpErlangMap.java:61: error: @param name not found >> * @param elems >> ^ >> ./com/ericsson/otp/erlang/OtpErlangMap.java:63: error: @param name not found >> * @param start >> ^ >> ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for keys >> public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, >> ^ >> ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for >> kstart >> public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, >> ^ >> ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for >> kcount >> public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, >> ^ >> ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for >> values >> public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, >> ^ >> ./com/ericsson/otp/erlang/OtpErlangMap.java:71: warning: no @param for >> vstart >> public OtpErlangMap(final OtpErlangObject[] keys, final int kstart, >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangObject.html... >> Generating >> ../doc/html/java/com/ericsson/otp/erlang/OtpErlangObject.Hash.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangPid.html... >> ./com/ericsson/otp/erlang/OtpErlangPid.java:165: error: @param name not >> found >> * @param port >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangPort.html... >> Generating >> ../doc/html/java/com/ericsson/otp/erlang/OtpErlangRangeException.html... >> ./com/ericsson/otp/erlang/OtpErlangRangeException.java:39: warning: no >> @param for msg >> public OtpErlangRangeException(final String msg) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangRef.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangShort.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangString.html... >> ./com/ericsson/otp/erlang/OtpErlangString.java:193: warning: no @param for >> bytes >> public static String newString(final byte[] bytes) { >> ^ >> ./com/ericsson/otp/erlang/OtpErlangString.java:193: warning: no @return >> public static String newString(final byte[] bytes) { >> ^ >> ./com/ericsson/otp/erlang/OtpErlangString.java:45: error: invalid use of >> @return >> * @return an Erlang string with Unicode code units. >> ^ >> ./com/ericsson/otp/erlang/OtpErlangString.java:53: warning: no @param for >> list >> public OtpErlangString(final OtpErlangList list) >> ^ >> ./com/ericsson/otp/erlang/OtpErlangString.java:38: warning: no @param for >> str >> public OtpErlangString(final String str) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangTuple.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangUInt.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpErlangUShort.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpException.html... >> ./com/ericsson/otp/erlang/OtpException.java:35: warning: no @param for msg >> public OtpException(final String msg) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpExternal.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpInputStream.html... >> ./com/ericsson/otp/erlang/OtpInputStream.java:110: warning: no @param for >> buf >> public int readN(final byte[] buf) throws OtpErlangDecodeException { >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for >> buf >> public int readN(final byte[] buf, final int off, final int len) >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for >> off >> public int readN(final byte[] buf, final int off, final int len) >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:123: warning: no @param for >> len >> public int readN(final byte[] buf, final int off, final int len) >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:138: warning: no @return >> public int peek() throws OtpErlangDecodeException { >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:138: warning: no @throws for >> com.ericsson.otp.erlang.OtpErlangDecodeException >> public int peek() throws OtpErlangDecodeException { >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:39: warning: no description >> for @param >> * @param buf >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:48: warning: no description >> for @param >> * @param flags >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:50: warning: no @param for buf >> public OtpInputStream(final byte[] buf, final int flags) { >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:59: warning: no description >> for @param >> * @param flags >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for buf >> public OtpInputStream(final byte[] buf, final int offset, final int >> length, >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for >> offset >> public OtpInputStream(final byte[] buf, final int offset, final int >> length, >> ^ >> ./com/ericsson/otp/erlang/OtpInputStream.java:61: warning: no @param for >> length >> public OtpInputStream(final byte[] buf, final int offset, final int >> length, >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpLocalNode.html... >> ./com/ericsson/otp/erlang/OtpLocalNode.java:42: warning: no @param for node >> protected OtpLocalNode(final String node) { >> ^ >> ./com/ericsson/otp/erlang/OtpLocalNode.java:50: warning: no @param for node >> protected OtpLocalNode(final String node, final String cookie) { >> ^ >> ./com/ericsson/otp/erlang/OtpLocalNode.java:50: warning: no @param for >> cookie >> protected OtpLocalNode(final String node, final String cookie) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpMbox.html... >> ./com/ericsson/otp/erlang/OtpMbox.java:423: error: unexpected end tag:

    >> *

    >> ^ >> ./com/ericsson/otp/erlang/OtpMbox.java:427: warning: no @param for reason >> public void exit(final String reason) { >> ^ >> ./com/ericsson/otp/erlang/OtpMbox.java:458: warning: no @param for to >> public void exit(final OtpErlangPid to, final String reason) { >> ^ >> ./com/ericsson/otp/erlang/OtpMbox.java:458: warning: no @param for reason >> public void exit(final OtpErlangPid to, final String reason) { >> ^ >> ./com/ericsson/otp/erlang/OtpMbox.java:598: warning: no @return >> public boolean ping(final String node, final long timeout) { >> ^ >> ./com/ericsson/otp/erlang/OtpMbox.java:632: warning: no @param for name >> public OtpErlangPid whereis(final String name) { >> ^ >> ./com/ericsson/otp/erlang/OtpMbox.java:76: error: unexpected end tag:

    >> *

    >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpMsg.html... >> ./com/ericsson/otp/erlang/OtpMsg.java:187: warning: no @return >> public int type() { >> ^ >> ./com/ericsson/otp/erlang/OtpMsg.java:33: error: unknown tag: lu >> * The header information that is available is as follows: >> ^ >> ./com/ericsson/otp/erlang/OtpMsg.java:34: error: tag not allowed here:
  • >> *
  • a tag indicating the type of message >> ^ >> ./com/ericsson/otp/erlang/OtpMsg.java:35: error: tag not allowed here:
  • >> *
  • the intended recipient of the message, either as a >> ^ >> ./com/ericsson/otp/erlang/OtpMsg.java:37: error: tag not allowed here:
  • >> *
  • (sometimes) the sender of the message. Due to some eccentric >> ^ >> ./com/ericsson/otp/erlang/OtpMsg.java:40: error: unknown tag: lu >> * is {@link OtpMsg#regSendTag regSendTag} contain sender information. >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNode.html... >> ./com/ericsson/otp/erlang/OtpNode.java:304: warning: no @param for name >> public OtpErlangPid whereis(final String name) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNode.Acceptor.html... >> Generating >> ../doc/html/java/com/ericsson/otp/erlang/OtpNode.Mailboxes.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpNodeStatus.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpOutputStream.html... >> ./com/ericsson/otp/erlang/OtpOutputStream.java:205: error: @param name not >> found >> * @param buf >> ^ >> ./com/ericsson/otp/erlang/OtpOutputStream.java:209: warning: no @param for >> bytes >> public void writeN(final byte[] bytes) { >> ^ >> ./com/ericsson/otp/erlang/OtpOutputStream.java:640: error: @param name not >> found >> * @param s >> ^ >> ./com/ericsson/otp/erlang/OtpOutputStream.java:643: warning: no @param for >> us >> public void write_ushort(final short us) { >> ^ >> ./com/ericsson/otp/erlang/OtpOutputStream.java:64: warning: no @param for >> size >> public OtpOutputStream(final int size) { >> ^ >> ./com/ericsson/otp/erlang/OtpOutputStream.java:71: warning: no @param for o >> public OtpOutputStream(final OtpErlangObject o) { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpPeer.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpSelf.html... >> ./com/ericsson/otp/erlang/OtpSelf.java:71: warning: no @throws for >> java.io.IOException >> public OtpSelf(final String node) throws IOException { >> ^ >> ./com/ericsson/otp/erlang/OtpSelf.java:85: warning: no @throws for >> java.io.IOException >> public OtpSelf(final String node, final String cookie) throws >> IOException { >> ^ >> Generating ../doc/html/java/com/ericsson/otp/erlang/OtpServer.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/package-frame.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/package-summary.html... >> Generating ../doc/html/java/com/ericsson/otp/erlang/package-tree.html... >> Generating ../doc/html/java/constant-values.html... >> Generating ../doc/html/java/serialized-form.html... >> Building index for all the packages and classes... >> Generating ../doc/html/java/overview-tree.html... >> Generating ../doc/html/java/index-all.html... >> Generating ../doc/html/java/deprecated-list.html... >> Building index for all classes... >> Generating ../doc/html/java/allclasses-frame.html... >> Generating ../doc/html/java/allclasses-noframe.html... >> Generating ../doc/html/java/index.html... >> Generating ../doc/html/java/help-doc.html... >> 16 errors >> 74 warnings >> make[5]: *** [jdoc] Error 1 >> make[5]: Leaving directory >> `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib/jinterface/doc/src' >> make[4]: *** [release_docs] Error 2 >> make[4]: Leaving directory >> `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib/jinterface/doc/src' >> make[3]: *** [release_docs] Error 2 >> make[3]: Leaving directory >> `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib/jinterface' >> make[2]: *** [release_docs] Error 2 >> make[2]: Leaving directory >> `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp/lib' >> make[1]: *** [release_docs] Error 2 >> make[1]: Leaving directory >> `/home/FAMILY/bsmr/repositories/github.com/bsmr-erlang/otp' >> make: *** [install-docs] Error 2 >> >> >> _______________________________________________ >> erlang-bugs mailing list >> erlang-bugs@REDACTED >> http://erlang.org/mailman/listinfo/erlang-bugs >> > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs From n.oxyde@REDACTED Mon Jun 9 13:32:51 2014 From: n.oxyde@REDACTED (Anthony Ramine) Date: Mon, 9 Jun 2014 13:32:51 +0200 Subject: [erlang-bugs] Latin-1 source code compatibility bug In-Reply-To: References: Message-ID: <4C45E53F-18D0-4591-BDD2-FF6BE5AD4C05@gmail.com> Is that even supposed to work now that UTF-8 is the default? -- Anthony Ramine Le 21 mai 2014 ? 13:13, Richard Carlsson a ?crit : > > The attached file (originally an extract from Mochiweb) triggers the following problem: > > erlc bar.erl > /home/richardc/bar.erl:7: cannot parse file, giving up > > > > /Richard > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs From magnus@REDACTED Mon Jun 9 13:48:55 2014 From: magnus@REDACTED (Magnus Henoch) Date: Mon, 09 Jun 2014 12:48:55 +0100 Subject: [erlang-bugs] Latin-1 source code compatibility bug In-Reply-To: <4C45E53F-18D0-4591-BDD2-FF6BE5AD4C05@gmail.com> (Anthony Ramine's message of "Mon, 9 Jun 2014 13:32:51 +0200") References: <4C45E53F-18D0-4591-BDD2-FF6BE5AD4C05@gmail.com> Message-ID: Anthony Ramine writes: > Is that even supposed to work now that UTF-8 is the default? The README file for 17.0 says: OTP-11791 The default encoding for Erlang source files is now UTF-8. As a temporary measure to ease the transition from the old default of latin-1, if the compiler encounters byte sequences that are not valid UTF-8 sequences, the compiler will re-try the compilation in latin-1 mode. This workaround will be removed in a future release. It seems like the compiler doesn't retry using latin-1 in this case. (For the record, the file in question compiles without problems if you put "%% -*- coding: latin-1 -*-" as the first line.) Regards, Magnus From n.oxyde@REDACTED Mon Jun 9 17:12:25 2014 From: n.oxyde@REDACTED (Anthony Ramine) Date: Mon, 9 Jun 2014 17:12:25 +0200 Subject: [erlang-bugs] xmerl xsd validation error In-Reply-To: <47355108-fed3e62cb3334b5421e72241f8b28288@pmq3v.m5r2.onet> References: <47355108-fed3e62cb3334b5421e72241f8b28288@pmq3v.m5r2.onet> Message-ID: <1CDC4537-6313-4CB8-B413-EF640A8B036C@gmail.com> Validate how? Could you give a sample of an XML file to match against these? You didn?t provide a definition for someType either. -- Anthony Ramine Le 21 mai 2014 ? 16:34, jan_kowalski6669 a ?crit : > This validates ok: > > > > > > > > > > > > > > But this not: > > > > > > > > > > > > > > > Those xsd's are equal, but not for xmerl. > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs From daniel.goertzen@REDACTED Thu Jun 12 22:57:15 2014 From: daniel.goertzen@REDACTED (Daniel Goertzen) Date: Thu, 12 Jun 2014 15:57:15 -0500 Subject: [erlang-bugs] x509 certificate decoded string representation is wrong Message-ID: In the public_key application, decoding of attributes in x509 certificates does not always decode to a string as indicated in the documentation. The documentation says that the value of commonName (and several other attributes) should be: special_string() = {teletexString, string()} | {printableString, string()} | {universalString, string()} | {utf8String, string()} | {bmpString, string()} ... however when I decode a cert I see a utf8String coming out as a binary instead of a string().... [{'AttributeTypeAndValue', {2,5,4,3}, {utf8String,<<"Daniel Goertzen">>}}], ... and typer shows several other non-string representations (unicode characters represented by 4-tuples): -spec dec_X520CommonName(_) -> {'bmpString',[byte() | {byte(),byte(),byte(),byte()}] | {byte(),binary()}} | {'printableString',[byte() | {byte(),byte(),byte(),byte()}] | {byte(),binary()}} | {'teletexString',[byte() | {byte(),byte(),byte(),byte()}] | {byte(),binary()}} | {'universalString',[byte() | {byte(),byte(),byte(),byte()}] | {byte(),binary()}} | {'utf8String',_}. Also, encoding does not accept unicode strings (list of chars). The example below crashes. Subject = {rdnSequence, [ [#'AttributeTypeAndValue'{ type = ?'id-at-commonName', value = {utf8String, [16#4e09|" string starting with a chinese symbol"]} }] ]}, I assume that the documentation is right and the decoded representation should be "list of characters". Instead internal representations are coming through. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mario.santoro@REDACTED Thu Jun 12 17:03:33 2014 From: mario.santoro@REDACTED (Mario Santoro) Date: Thu, 12 Jun 2014 15:03:33 +0000 Subject: [erlang-bugs] Error on running Erlang SSH server Message-ID: Hi, I'm trying to run an SSH server in Erlang and test a connection over SSH. I've generated an RSA keys pair (with NO passphrase) for the SSH system and put the private key into "C:/Utility/Putty/ssh_daemon" directory, while the user public_key is into "C:/Utility/Putty/public_key" directory. I'm running both the server and the client on the same PC, into two different Erlang nodes. The SSH server starts fine: (node1@REDACTED)1> ssh:start(). ok (node1@REDACTED)2> {ok, Sshd} = ssh:daemon(8988, [{auth_methods, "password"}, {user_passwords, [{"mario", "mariopasswd"}, {system_dir, "C:/Utility/Putty/ssh_daemon"}]} ]). {ok,<0.54.0>} but on receiving a connection from the client: (node2@REDACTED)1> ssh:start(). ok (node2@REDACTED)2> {ok, ConnectionRef} = ssh:connect("E7E4115BF83167", 8988, [{user, "mario"}, {password, "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, {silently_accept_hosts, true}, {user_interaction, false} ], 5000). ** exception error: no match of right hand side value {error,"Internal error"} the SSH server application is crashing with the following error: (node1@REDACTED)3> =ERROR REPORT==== 29-May-2014::17:44:58 === Erlang ssh connection handler failed with reason: function_clause , Stacktace: [{ssh_file,identity_pass_phrase, [undefined], [{file,"ssh_file.erl"},{line,222}]}, {ssh_file,host_key,2,[{file,"ssh_file.erl"},{line,53}]}, {ssh_transport,get_host_key,1, [{file,"ssh_transport.erl"},{line,412}]}, {ssh_transport,handle_kexdh_init,2, [{file,"ssh_transport.erl"},{line,314}]}, {ssh_connection_handler,key_exchange,2, [{file,"ssh_connection_handler.erl"}, {line,201}]}, {gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,494}]}, {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}] please report this to erlang-bugs@REDACTED This happens at each client connection attempt. Could you please help me on this issue? Thank you in advance for your help. Regards, /Mario MARIO SANTORO CD Media & Application Ericsson Telecomunicazioni SpA SCM Region Via Anagnina, 203 00118, Rome, ITALY Phone +39 06 7258 8404 Fax +39 06 7258 4289 Mobile +39 335 699 5215 mario.santoro@REDACTED www.ericsson.com [cid:image002.png@REDACTED] This Communication is Confidential. We only send and receive email on the basis of the terms set out at www.ericsson.com/email_disclaimer -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image001.gif Type: image/gif Size: 1439 bytes Desc: image001.gif URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image002.png Type: image/png Size: 2127 bytes Desc: image002.png URL: From hans@REDACTED Fri Jun 13 14:46:44 2014 From: hans@REDACTED (Hans Nilsson) Date: Fri, 13 Jun 2014 14:46:44 +0200 Subject: [erlang-bugs] Error on running Erlang SSH server In-Reply-To: References: Message-ID: <539AF2B4.4030402@erlang.org> Hi, which ssh version are you running? /Hans On 2014-06-12 17:03, Mario Santoro wrote: > > Hi, > > I'm trying to run an SSH server in Erlang and test a > connection over SSH. > > I've generated an RSA keys pair (with NO passphrase) for the SSH > system and put the private key into "C:/Utility/Putty/ssh_daemon" > directory, > > while the user public_key is into "C:/Utility/Putty/public_key" directory. > > I'm running both the server and the client on the same PC, into two > different Erlang nodes. > > The SSH server starts fine: > > /(//node1@REDACTED)1> ssh:start()./ > > /ok/ > > /(node1@REDACTED)2> {ok, Sshd} = ssh:daemon(8988, > [{auth_methods, "password"}, {user_passwords, [{"mario", > "mariopasswd"}, {system_dir, "C:/Utility/Putty/ssh_daemon"}]} ])./ > > /{ok,<0.54.0>}/ > > but on receiving a connection from the client: > > /(node2@REDACTED)1> ssh:start()./ > > /ok/ > > /(node2@REDACTED)2> {ok, ConnectionRef} = > ssh:connect("E7E4115BF83167", 8988, [{user, "mario"}, {password, > "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, > {silently_accept_hosts, true}, {user_interaction, false} ], 5000)./ > > /** exception error: no match of right hand side value > {error,"Internal error"}/ > > the SSH server application is crashing with the following error: > > /(node1@REDACTED)3> / > > /=ERROR REPORT==== 29-May-2014::17:44:58 ===/ > > /Erlang ssh connection handler failed with reason: function_clause / > > /, Stacktace: [{ssh_file,identity_pass_phrase,/ > > /[undefined],/ > > /[{file,"ssh_file.erl"},{line,222}]},/ > > /{ssh_file,host_key,2,[{file,"ssh_file.erl"},{line,53}]},/ > > /{ssh_transport,get_host_key,1,/ > > /[{file,"ssh_transport.erl"},{line,412}]},/ > > /{ssh_transport,handle_kexdh_init,2,/ > > /[{file,"ssh_transport.erl"},{line,314}]},/ > > /{ssh_connection_handler,key_exchange,2,/ > > / [{file,"ssh_connection_handler.erl"},/ > > /{line,201}]},/ > > /{gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,494}]},/ > > /{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}] / > > /please report this to erlang-bugs@REDACTED/ > > This happens at each client connection attempt. > > Could you please help me on this issue? > > Thank you in advance for your help. > > Regards, > > /Mario > > imap://hans@REDACTED:993/fetch%3EUID%3E/Erlang-lists/erlang-bugs%3E552?header=quotebody&part=1.1.2&filename=image001.gif > > *MARIO SANTORO * > *CD Media & Application* > > > Ericsson Telecomunicazioni SpA > SCM Region > Via Anagnina, 203 > 00118, Rome, ITALY > Phone +39 06 7258 8404 > Fax +39 06 7258 4289 > Mobile +39 335 699 5215 > mario.santoro@REDACTED > www.ericsson.com > > > > imap://hans@REDACTED:993/fetch%3EUID%3E/Erlang-lists/erlang-bugs%3E552?header=quotebody&part=1.1.3&filename=image002.png > > > > This Communication is Confidential. We only send and receive email on > the basis of the terms set out at www.ericsson.com/email_disclaimer > > > > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 1439 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/png Size: 2127 bytes Desc: not available URL: From tony@REDACTED Fri Jun 13 15:14:02 2014 From: tony@REDACTED (Tony Rogvall) Date: Fri, 13 Jun 2014 15:14:02 +0200 Subject: [erlang-bugs] Error on running Erlang SSH server In-Reply-To: <539AF2B4.4030402@erlang.org> References: <539AF2B4.4030402@erlang.org> Message-ID: <558EB510-AAD6-4ED1-86FC-676B524686C4@rogvall.se> On 13 jun 2014, at 14:46, Hans Nilsson wrote: > Hi, > which ssh version are you running? > /Hans > > On 2014-06-12 17:03, Mario Santoro wrote: >> Hi, >> I?m trying to run an SSH server in Erlang and test a connection over SSH. >> I?ve generated an RSA keys pair (with NO passphrase) for the SSH system and put the private key into ?C:/Utility/Putty/ssh_daemon? directory, >> while the user public_key is into ?C:/Utility/Putty/public_key? directory. >> I?m running both the server and the client on the same PC, into two different Erlang nodes. >> >> The SSH server starts fine: >> (node1@REDACTED)1> ssh:start(). >> ok >> (node1@REDACTED)2> {ok, Sshd} = ssh:daemon(8988, [{auth_methods, "password"}, {user_passwords, [{"mario", "mariopasswd"},{system_dir, "C:/Utility/Putty/ssh_daemon"}]} ]). >> {ok,<0.54.0>} >> Could the problem be that {system_dir, "C:/Utility/Putty/ssh_daemon"} is specified in the {user_passwords,..} list and not as a separate option. ? /Tony >> >> but on receiving a connection from the client: >> (node2@REDACTED)1> ssh:start(). >> ok >> (node2@REDACTED)2> {ok, ConnectionRef} = ssh:connect("E7E4115BF83167", 8988, [{user, "mario"}, {password, "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, {silently_accept_hosts, true}, {user_interaction, false} ], 5000). >> ** exception error: no match of right hand side value {error,"Internal error"} >> >> >> the SSH server application is crashing with the following error: >> (node1@REDACTED)3> >> =ERROR REPORT==== 29-May-2014::17:44:58 === >> Erlang ssh connection handler failed with reason: function_clause >> , Stacktace: [{ssh_file,identity_pass_phrase, >> [undefined], >> [{file,"ssh_file.erl"},{line,222}]}, >> {ssh_file,host_key,2,[{file,"ssh_file.erl"},{line,53}]}, >> {ssh_transport,get_host_key,1, >> [{file,"ssh_transport.erl"},{line,412}]}, >> {ssh_transport,handle_kexdh_init,2, >> [{file,"ssh_transport.erl"},{line,314}]}, >> {ssh_connection_handler,key_exchange,2, >> [{file,"ssh_connection_handler.erl"}, >> {line,201}]}, >> {gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,494}]}, >> {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}] >> please report this to erlang-bugs@REDACTED >> >> >> This happens at each client connection attempt. >> Could you please help me on this issue? >> >> Thank you in advance for your help. >> >> Regards, >> /Mario >> >> >> >> MARIO SANTORO >> CD Media & Application >> >> Ericsson Telecomunicazioni SpA >> SCM Region >> Via Anagnina, 203 >> 00118, Rome, ITALY >> Phone +39 06 7258 8404 >> Fax +39 06 7258 4289 >> Mobile +39 335 699 5215 >> mario.santoro@REDACTED >> www.ericsson.com >> >> >> >> >> This Communication is Confidential. We only send and receive email on the basis of the terms set out atwww.ericsson.com/email_disclaimer >> >> >> >> _______________________________________________ >> erlang-bugs mailing list >> erlang-bugs@REDACTED >> http://erlang.org/mailman/listinfo/erlang-bugs > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs "Installing applications can lead to corruption over time. Applications gradually write over each other's libraries, partial upgrades occur, user and system errors happen, and minute changes may be unnoticeable and difficult to fix" -------------- next part -------------- An HTML attachment was scrubbed... URL: From daniel.goertzen@REDACTED Fri Jun 13 16:08:05 2014 From: daniel.goertzen@REDACTED (Daniel Goertzen) Date: Fri, 13 Jun 2014 09:08:05 -0500 Subject: [erlang-bugs] Error on running Erlang SSH server In-Reply-To: References: Message-ID: I followed the code here ( https://github.com/erlang/otp/blob/OTP-17.0.2/lib/ssh/src/ssh_transport.erl#L374 ) It tells me that the client and server share no host key algorithm. Did you setup a host key(s) for the server? I think the code should crash at line 374 instead of returning undefined and crashing in a more obscure place, but perhaps there are other reasons for that. On Thu, Jun 12, 2014 at 10:03 AM, Mario Santoro wrote: > Hi, > > I?m trying to run an SSH server in Erlang and test a > connection over SSH. > > I?ve generated an RSA keys pair (with NO passphrase) for the SSH system > and put the private key into ?C:/Utility/Putty/ssh_daemon? directory, > > while the user public_key is into ?C:/Utility/Putty/public_key? directory. > > I?m running both the server and the client on the same PC, into two > different Erlang nodes. > > > > The SSH server starts fine: > > *(**node1@REDACTED)1> ssh:start().* > > *ok* > > *(node1@REDACTED)2> {ok, Sshd} = ssh:daemon(8988, [{auth_methods, > "password"}, {user_passwords, [{"mario", "mariopasswd"}, {system_dir, > "C:/Utility/Putty/ssh_daemon"}]} ]).* > > *{ok,<0.54.0>}* > > > > > > but on receiving a connection from the client: > > *(node2@REDACTED)1> ssh:start().* > > *ok* > > *(node2@REDACTED)2> {ok, ConnectionRef} = > ssh:connect("E7E4115BF83167", 8988, [{user, "mario"}, {password, > "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, > {silently_accept_hosts, true}, {user_interaction, false} ], 5000).* > > *** exception error: no match of right hand side value {error,"Internal > error"}* > > > > > > the SSH server application is crashing with the following error: > > *(node1@REDACTED)3> * > > *=ERROR REPORT==== 29-May-2014::17:44:58 ===* > > *Erlang ssh connection handler failed with reason: function_clause * > > *, Stacktace: [{ssh_file,identity_pass_phrase,* > > * [undefined],* > > * [{file,"ssh_file.erl"},{line,222}]},* > > * {ssh_file,host_key,2,[{file,"ssh_file.erl"},{line,53}]},* > > * {ssh_transport,get_host_key,1,* > > * [{file,"ssh_transport.erl"},{line,412}]},* > > * {ssh_transport,handle_kexdh_init,2,* > > * [{file,"ssh_transport.erl"},{line,314}]},* > > * {ssh_connection_handler,key_exchange,2,* > > * > [{file,"ssh_connection_handler.erl"},* > > * {line,201}]},* > > * {gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,494}]},* > > * > {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}] * > > *please report this to erlang-bugs@REDACTED * > > > > > > This happens at each client connection attempt. > > Could you please help me on this issue? > > > > Thank you in advance for your help. > > > > Regards, > > /Mario > > > > [image: cid:image001.gif@REDACTED] > > *MARIO SANTORO * > *CD Media & Application* > > > Ericsson Telecomunicazioni SpA > SCM Region > Via Anagnina, 203 > 00118, Rome, ITALY > Phone +39 06 7258 8404 > Fax +39 06 7258 4289 > Mobile +39 335 699 5215 > mario.santoro@REDACTED > www.ericsson.com > > > > [image: cid:image002.png@REDACTED] > > > This Communication is Confidential. We only send and receive email on the > basis of the terms set out at www.ericsson.com/email_disclaimer > > > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image002.png Type: image/png Size: 2127 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image001.gif Type: image/gif Size: 1439 bytes Desc: not available URL: From arif@REDACTED Sun Jun 15 19:56:03 2014 From: arif@REDACTED (Arif) Date: Sun, 15 Jun 2014 19:56:03 +0200 Subject: [erlang-bugs] Error on running Erlang SSH server In-Reply-To: References: Message-ID: <539DDE33.1080207@riseup.net> I have tried to replicate the problem and it is as Tony suggested: system_dir in the list of user_passwords ensures system_dir is not set. There are either no host keys in the default directory as Daniel's reply suggests or if they are, they are not readable. The bug, if any, would be the somewhat misleading error message with a request to report it to this mailing list. Regards Arif On 06/14/2014 12:00 PM, erlang-bugs-request@REDACTED wrote: > Date: Fri, 13 Jun 2014 09:08:05 -0500 > From: Daniel Goertzen > To: Mario Santoro > Cc: "erlang-bugs@REDACTED" > Subject: Re: [erlang-bugs] Error on running Erlang SSH server > Message-ID: > > Content-Type: text/plain; charset="utf-8" > > > On Thu, Jun 12, 2014 at 10:03 AM, Mario Santoro > wrote: > >> Hi, >> >> I?m trying to run an SSH server in Erlang and test a >> connection over SSH. >> >> I?ve generated an RSA keys pair (with NO passphrase) for the SSH system >> and put the private key into ?C:/Utility/Putty/ssh_daemon? directory, >> >> while the user public_key is into ?C:/Utility/Putty/public_key? directory. >> >> I?m running both the server and the client on the same PC, into two >> different Erlang nodes. >> >> >> >> The SSH server starts fine: >> >> *(**node1@REDACTED)1> ssh:start().* >> >> *ok* >> >> *(node1@REDACTED)2> {ok, Sshd} = ssh:daemon(8988, [{auth_methods, >> "password"}, {user_passwords, [{"mario", "mariopasswd"}, {system_dir, >> "C:/Utility/Putty/ssh_daemon"}]} ]).* >> >> *{ok,<0.54.0>}* >> >> >> >> >> >> but on receiving a connection from the client: >> >> *(node2@REDACTED)1> ssh:start().* >> >> *ok* >> >> *(node2@REDACTED)2> {ok, ConnectionRef} = >> ssh:connect("E7E4115BF83167", 8988, [{user, "mario"}, {password, >> "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, >> {silently_accept_hosts, true}, {user_interaction, false} ], 5000).* >> >> *** exception error: no match of right hand side value {error,"Internal >> error"}* >> >> >> >> >> >> the SSH server application is crashing with the following error: >> >> *(node1@REDACTED)3> * >> >> *=ERROR REPORT==== 29-May-2014::17:44:58 ===* >> >> *Erlang ssh connection handler failed with reason: function_clause * >> >> *, Stacktace: [{ssh_file,identity_pass_phrase,* >> >> * [undefined],* >> >> * [{file,"ssh_file.erl"},{line,222}]},* >> >> * {ssh_file,host_key,2,[{file,"ssh_file.erl"},{line,53}]},* >> >> * {ssh_transport,get_host_key,1,* >> >> * [{file,"ssh_transport.erl"},{line,412}]},* >> >> * {ssh_transport,handle_kexdh_init,2,* >> >> * [{file,"ssh_transport.erl"},{line,314}]},* >> >> * {ssh_connection_handler,key_exchange,2,* >> >> * >> [{file,"ssh_connection_handler.erl"},* >> >> * {line,201}]},* >> >> * {gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,494}]},* >> >> * >> {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}] * >> >> *please report this to erlang-bugs@REDACTED * >> >> >> >> >> >> This happens at each client connection attempt. >> >> Could you please help me on this issue? >> >> >> >> Thank you in advance for your help. >> >> >> >> Regards, >> >> /Mario >> >> From Ingela.Anderton.Andin@REDACTED Mon Jun 16 09:42:07 2014 From: Ingela.Anderton.Andin@REDACTED (Ingela Anderton Andin) Date: Mon, 16 Jun 2014 09:42:07 +0200 Subject: [erlang-bugs] Error on running Erlang SSH server In-Reply-To: <539DDE33.1080207@riseup.net> References: <539DDE33.1080207@riseup.net> Message-ID: <539E9FCF.1040009@ericsson.com> Hi! On 06/15/2014 07:56 PM, Arif wrote: > I have tried to replicate the problem and it is as Tony suggested: > system_dir in the list of user_passwords ensures system_dir is not set. > There are either no host keys in the default directory as Daniel's reply > suggests or if they are, they are not readable. > The bug, if any, would be the somewhat misleading error message with a > request to report it to this mailing list. Yes we also have found that message to be misleading a few times, it has been changed in the latest version of ssh. Regards Ingela Erlang/OTP team - Ericsson AB > Regards > Arif > > On 06/14/2014 12:00 PM, erlang-bugs-request@REDACTED wrote: >> Date: Fri, 13 Jun 2014 09:08:05 -0500 >> From: Daniel Goertzen >> To: Mario Santoro >> Cc: "erlang-bugs@REDACTED" >> Subject: Re: [erlang-bugs] Error on running Erlang SSH server >> Message-ID: >> >> Content-Type: text/plain; charset="utf-8" >> >> >> On Thu, Jun 12, 2014 at 10:03 AM, Mario Santoro >> >> wrote: >> >>> Hi, >>> >>> I?m trying to run an SSH server in Erlang and test a >>> connection over SSH. >>> >>> I?ve generated an RSA keys pair (with NO passphrase) for the SSH system >>> and put the private key into ?C:/Utility/Putty/ssh_daemon? directory, >>> >>> while the user public_key is into ?C:/Utility/Putty/public_key? >>> directory. >>> >>> I?m running both the server and the client on the same PC, into two >>> different Erlang nodes. >>> >>> >>> >>> The SSH server starts fine: >>> >>> *(**node1@REDACTED)1> ssh:start().* >>> >>> *ok* >>> >>> *(node1@REDACTED)2> {ok, Sshd} = ssh:daemon(8988, [{auth_methods, >>> "password"}, {user_passwords, [{"mario", "mariopasswd"}, {system_dir, >>> "C:/Utility/Putty/ssh_daemon"}]} ]).* >>> >>> *{ok,<0.54.0>}* >>> >>> >>> >>> >>> >>> but on receiving a connection from the client: >>> >>> *(node2@REDACTED)1> ssh:start().* >>> >>> *ok* >>> >>> *(node2@REDACTED)2> {ok, ConnectionRef} = >>> ssh:connect("E7E4115BF83167", 8988, [{user, "mario"}, {password, >>> "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, >>> {silently_accept_hosts, true}, {user_interaction, false} ], 5000).* >>> >>> *** exception error: no match of right hand side value {error,"Internal >>> error"}* >>> >>> >>> >>> >>> >>> the SSH server application is crashing with the following error: >>> >>> *(node1@REDACTED)3> * >>> >>> *=ERROR REPORT==== 29-May-2014::17:44:58 ===* >>> >>> *Erlang ssh connection handler failed with reason: function_clause * >>> >>> *, Stacktace: [{ssh_file,identity_pass_phrase,* >>> >>> * [undefined],* >>> >>> * [{file,"ssh_file.erl"},{line,222}]},* >>> >>> * {ssh_file,host_key,2,[{file,"ssh_file.erl"},{line,53}]},* >>> >>> * {ssh_transport,get_host_key,1,* >>> >>> * [{file,"ssh_transport.erl"},{line,412}]},* >>> >>> * {ssh_transport,handle_kexdh_init,2,* >>> >>> * [{file,"ssh_transport.erl"},{line,314}]},* >>> >>> * {ssh_connection_handler,key_exchange,2,* >>> >>> * >>> [{file,"ssh_connection_handler.erl"},* >>> >>> * {line,201}]},* >>> >>> * >>> {gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,494}]},* >>> >>> * >>> {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}] * >>> >>> *please report this to erlang-bugs@REDACTED * >>> >>> >>> >>> >>> >>> This happens at each client connection attempt. >>> >>> Could you please help me on this issue? >>> >>> >>> >>> Thank you in advance for your help. >>> >>> >>> >>> Regards, >>> >>> /Mario >>> >>> > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs From mario.santoro@REDACTED Mon Jun 16 18:22:25 2014 From: mario.santoro@REDACTED (Mario Santoro) Date: Mon, 16 Jun 2014 16:22:25 +0000 Subject: [erlang-bugs] Error on running Erlang SSH server In-Reply-To: <558EB510-AAD6-4ED1-86FC-676B524686C4@rogvall.se> References: <539AF2B4.4030402@erlang.org> <558EB510-AAD6-4ED1-86FC-676B524686C4@rogvall.se> Message-ID: Hi Tony, you were right about the wrong tuple where I specified the system_dir. Tried with the following: >{ok, Sshd} = ssh:daemon(8988, [{auth_methods, "password"}, {user_passwords, [{"mario", "mariopasswd"}]}, {system_dir, "C:/Utility/Putty/ssh_daemon"} ]). ?Z{ok,<0.644.0>} but at client connection: >{ok, ConnectionRef} = ssh:connect("E7E4115BF83167", 8988, [{user, "mario"}, {password, "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, {silently_accept_hosts, true}, {user_interaction, false} ], 5000). ** exception error: no match of right hand side value {error,"Internal error"} I got the same error. The host keys are installed in the specified paths. Hi, which ssh version are you running? Hi Hans, from the output of ssh:module_info()., I get: ?? {version,"4.9"}, {time,{2013,2,25,19,38,30}} ?? Thanks all so far for your help. /Mario From: Tony Rogvall [mailto:tony@REDACTED] Sent: venerd?? 13 giugno 2014 15:14 To: hans@REDACTED Cc: Mario Santoro; erlang-bugs@REDACTED Subject: Re: [erlang-bugs] Error on running Erlang SSH server On 13 jun 2014, at 14:46, Hans Nilsson > wrote: Hi, which ssh version are you running? /Hans On 2014-06-12 17:03, Mario Santoro wrote: Hi, I??m trying to run an SSH server in Erlang and test a connection over SSH. I??ve generated an RSA keys pair (with NO passphrase) for the SSH system and put the private key into ??C:/Utility/Putty/ssh_daemon?? directory, while the user public_key is into ??C:/Utility/Putty/public_key?? directory. I??m running both the server and the client on the same PC, into two different Erlang nodes. The SSH server starts fine: (node1@REDACTED)1> ssh:start(). ok (node1@REDACTED)2> {ok, Sshd} = ssh:daemon(8988, [{auth_methods, "password"}, {user_passwords, [{"mario", "mariopasswd"},{system_dir, "C:/Utility/Putty/ssh_daemon"}]} ]). {ok,<0.54.0>} Could the problem be that {system_dir, "C:/Utility/Putty/ssh_daemon"} is specified in the {user_passwords,..} list and not as a separate option. ? /Tony but on receiving a connection from the client: (node2@REDACTED)1> ssh:start(). ok (node2@REDACTED)2> {ok, ConnectionRef} = ssh:connect("E7E4115BF83167", 8988, [{user, "mario"}, {password, "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, {silently_accept_hosts, true}, {user_interaction, false} ], 5000). ** exception error: no match of right hand side value {error,"Internal error"} the SSH server application is crashing with the following error: (node1@REDACTED)3> =ERROR REPORT==== 29-May-2014::17:44:58 === Erlang ssh connection handler failed with reason: function_clause , Stacktace: [{ssh_file,identity_pass_phrase, [undefined], [{file,"ssh_file.erl"},{line,222}]}, {ssh_file,host_key,2,[{file,"ssh_file.erl"},{line,53}]}, {ssh_transport,get_host_key,1, [{file,"ssh_transport.erl"},{line,412}]}, {ssh_transport,handle_kexdh_init,2, [{file,"ssh_transport.erl"},{line,314}]}, {ssh_connection_handler,key_exchange,2, [{file,"ssh_connection_handler.erl"}, {line,201}]}, {gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,494}]}, {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}] please report this to erlang-bugs@REDACTED This happens at each client connection attempt. Could you please help me on this issue? Thank you in advance for your help. Regards, /Mario MARIO SANTORO CD Media & Application Ericsson Telecomunicazioni SpA SCM Region Via Anagnina, 203 00118, Rome, ITALY Phone +39 06 7258 8404 Fax +39 06 7258 4289 Mobile +39 335 699 5215 mario.santoro@REDACTED www.ericsson.com This Communication is Confidential. We only send and receive email on the basis of the terms set out atwww.ericsson.com/email_disclaimer _______________________________________________ erlang-bugs mailing list erlang-bugs@REDACTED http://erlang.org/mailman/listinfo/erlang-bugs _______________________________________________ erlang-bugs mailing list erlang-bugs@REDACTED http://erlang.org/mailman/listinfo/erlang-bugs "Installing applications can lead to corruption over time. Applications gradually write over each other's libraries, partial upgrades occur, user and system errors happen, and minute changes may be unnoticeable and difficult to fix" -------------- next part -------------- An HTML attachment was scrubbed... URL: From bjorn@REDACTED Tue Jun 17 11:19:10 2014 From: bjorn@REDACTED (=?UTF-8?Q?Bj=C3=B6rn_Gustavsson?=) Date: Tue, 17 Jun 2014 11:19:10 +0200 Subject: [erlang-bugs] Latin-1 source code compatibility bug In-Reply-To: References: Message-ID: On Wed, May 21, 2014 at 1:13 PM, Richard Carlsson wrote: > > The attached file (originally an extract from Mochiweb) triggers the > following problem: > > erlc bar.erl > /home/richardc/bar.erl:7: cannot parse file, giving up > Thanks for the bug report. I have just merged a fix to the maint branch. /Bjorn -- Bj?rn Gustavsson, Erlang/OTP, Ericsson AB From erlangsiri@REDACTED Tue Jun 17 14:52:53 2014 From: erlangsiri@REDACTED (Siri Hansen) Date: Tue, 17 Jun 2014 14:52:53 +0200 Subject: [erlang-bugs] reltool dependencies ignored In-Reply-To: <536BAE6F.3080308@gmail.com> References: <53628787.3070802@gmail.com> <536B4338.6040402@gmail.com> <536BAE6F.3080308@gmail.com> Message-ID: Hi Michael, I do agree that this is a bug. I've written a ticket which will be prioritized along with the other tasks in our backlog. Thanks for reporting! Best Regards /siri 2014-05-08 18:18 GMT+02:00 Michael Truog : > Hi Siri, > > Thanks for determining this. I am not sure how the dependencies are used, > it is possible syntax_tools wasn't being used where it is mentioned. > However, it really seems like this should be a bug simply due to the Erlang > application startup. I know the release (script/boot files) generated by > this particular reltool file doesn't start these applications (with the > problematic dependencies), but anything else that starts the applications > would do so by the dependencies mentioned. So, I don't see how this can't > be a bug. If xref determined that the dependencies were not called, it > could remove the application dependencies from the .app file dependencies > list, but having dependencies culled should be an option that you can turn > off like it can be with modules selected with reltool. I think culling the > dependencies is a bit dangerous (especially by default) because it should > be possible to have dependencies xref is unable to see (though I don't have > a good example of this). > > Thanks, > Michael > > > On 05/08/2014 08:20 AM, Siri Hansen wrote: > > Michael, it looks like reltool only follows the dependencies in the .app > file (applications tag) for applications that are included in a release in > the reltool config. For other applications that are mentioned in the config > reltool only follows dependencies found with xref. I can not see that any > of the applications that mention syntax_tools in their .app actually call > any of the modules in this application from the erlang code. How is > syntax_tools used? > > I'm not sure why reltool behaves this way, so I have to investigate a > bit further to find out if it is a bug or not. > > Regards > /siri > > torsdagen den 8:e maj 2014 skrev Siri Hansen : > >> ok, thanks! I will try this and continue digging :) >> /siri >> >> >> 2014-05-08 10:41 GMT+02:00 Michael Truog : >> >> Hi Siri, >> >> I know the situation there is a bit unusual. The external CloudI >> dependencies are moved so that the "cloudi_x_" prefix is added to all the >> external Erlang application names, their modules, and their header files. >> The external dependency directory names already have the "cloudi_x_" prefix >> to satisfy include_lib usage within the modules (so that means external >> CloudI dependencies that depend on each other, in a way that uses a header >> file with -include_lib). This is all done with the script at >> https://github.com/okeuday/reltool_util/blob/master/scope with the >> command line at >> https://github.com/CloudI/CloudI/blob/develop/src/Makefile.am#L7-L66 >> (i.e., atoms are selectively changed within the source code, along with the >> files being moved). However, that process doesn't impact how the external >> CloudI dependencies work. The prefix is added to simulate a namespace >> concept which doesn't exist in Erlang to avoid any potential conflicts when >> CloudI shares the Erlang VM with other Erlang applications. >> >> That is unusual, but the reltool usage is the same either way, its just >> an addition of a prefix for referencing the names, as they are now. The >> compilation process makes sure the prefix is added, so the external >> dependency files do change to satisfy the compilation, testing and release >> requirements. While it would be natural to assume this process is at fault >> for the reltool issue, I am sure that is not the case. You should be able >> to see this if you do a "./configure && make" of the root src directory, >> since that will make sure the files are as expected. >> >> Thanks, >> Michael >> >> >> On 05/08/2014 01:05 AM, Siri Hansen wrote: >> >> Hi Michael! >> >> I haven't spent a lot of time on this yet, but I was just trying to >> find the chain of dependencies that lead to syntax_tools, but I find it a >> bit hard I would appreciate some help... >> >> I found one way but it didn't really make sense: >> >> reltool.config includes application 'cloudi_service_db_cassandra', and >> in cloudi_service_db_cassandra.app.src.in you have >> {applications,[...,cloudi_x_erlang_cassandra,...]} >> >> Under the directory external/cloudi_x_erlang_cassandra/src/ I then >> find erlang_cassandra.app.src, which indeed has >> {applications,[...,syntax_tools,...]} - but this is obviously an >> application named 'erlang_cassandra' and not 'cloudi_x_erlang_cassandra' as >> listed above... so how does this work? >> >> Regards >> /siri >> >> >> 2014-05-01 19:42 GMT+02:00 Michael Truog : >> >> Hi, >> >> I believe I found a bug that causes reltool to ignore dependencies when >> generating a release. I am not sure where the problem is within reltool, >> but I at least have a way to demonstrate it. >> https://github.com/CloudI/CloudI/blob/develop/src/reltool.config.in#L78-L89 >> shows lines that are unnecessary within the reltool.config file. The >> dependencies mentioned there should be found automatically by reltool. If >> you remove those lines and do a make install (after the autogen.sh and >> configure steps) you will see the dependencies mentioned in these lines are >> not there. >> >> Thanks, >> Michael >> _______________________________________________ >> erlang-bugs mailing list >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From bengt.kleberg@REDACTED Tue Jun 17 15:07:33 2014 From: bengt.kleberg@REDACTED (Bengt Kleberg) Date: Tue, 17 Jun 2014 15:07:33 +0200 Subject: [erlang-bugs] init:stop/1 in escript Message-ID: <1403010453.4702.239.camel@sekic1152.rnd.ki.sw.ericsson.se> Greetings, Should init:stop/1 behave the same way in an escript as in a normal module? I have this escript(*). When I run it from Unix shell: sekic1152 [3:01pm] [/home/eleberg] -> ./t.erl sekic1152 [3:02pm] [/home/eleberg] -> echo $? 0 The same (comment out line 1) program when run from Erlang shell: 2> c(t). {ok,t} 3> t:main(asd). ok 4> sekic1152 [3:01pm] [/home/eleberg] -> echo $? 1 I think it is a bug that the status is different from 1 in the escript. My work around is to use erlang:halt/1 bengt (*) #! /usr/bin/env escript -module( t ). -export( [main/1] ). main( _ ) -> init:stop( 1 ). From mikpelinux@REDACTED Wed Jun 18 12:38:33 2014 From: mikpelinux@REDACTED (Mikael Pettersson) Date: Wed, 18 Jun 2014 12:38:33 +0200 Subject: [erlang-bugs] r15b03-1 SEGV in erts_port_task_execute() Message-ID: <21409.27689.585481.110836@gargle.gargle.HOWL> One of our nodes running OTP r15b03-1 segfaulted yesterday evening. Unfortunately it didn't produce a usable core dump (configuration problem, sigh), but the kernel logged the address of the instruction that faulted and the address it tried to access. The segfault turned out to be in erts_port_task_execute: int erts_port_task_execute(ErtsRunQueue *runq, Port **curr_port_pp) { int port_was_enqueued = 0; Port *pp; ErtsPortTaskQueue *ptqp; ErtsPortTask *ptp; int res = 0; int reds = ERTS_PORT_REDS_EXECUTE; erts_aint_t io_tasks_executed = 0; int fpe_was_unmasked; Uint64 start_time = 0; ERTS_SMP_LC_ASSERT(erts_smp_lc_runq_is_locked(runq)); ERTS_PT_CHK_PORTQ(runq); pp = pop_port(runq); if (!pp) { res = 0; goto done; } ERTS_PORT_NOT_IN_RUNQ(pp); *curr_port_pp = pp; ASSERT(pp->sched.taskq); ASSERT(pp->sched.taskq->first); ptqp = pp->sched.taskq; pp->sched.taskq = NULL; ASSERT(!pp->sched.exe_taskq); pp->sched.exe_taskq = ptqp; if (erts_smp_port_trylock(pp) == EBUSY) { erts_smp_runq_unlock(runq); erts_smp_port_lock(pp); erts_smp_runq_lock(runq); } if (erts_sched_stat.enabled) { ErtsSchedulerData *esdp = erts_get_scheduler_data(); Uint old = ERTS_PORT_SCHED_ID(pp, esdp->no); int migrated = old && old != esdp->no; erts_smp_spin_lock(&erts_sched_stat.lock); erts_sched_stat.prio[ERTS_PORT_PRIO_LEVEL].total_executed++; erts_sched_stat.prio[ERTS_PORT_PRIO_LEVEL].executed++; if (migrated) { erts_sched_stat.prio[ERTS_PORT_PRIO_LEVEL].total_migrated++; erts_sched_stat.prio[ERTS_PORT_PRIO_LEVEL].migrated++; } erts_smp_spin_unlock(&erts_sched_stat.lock); } /* trace port scheduling, in */ if (IS_TRACED_FL(pp, F_TRACE_SCHED_PORTS)) { trace_sched_ports(pp, am_in); } ERTS_SMP_LC_ASSERT(erts_lc_is_port_locked(pp)); ERTS_PT_CHK_PRES_PORTQ(runq, pp); ptp = pop_task(ptqp); At this point ptqp is NULL, so the initial load in the pop_task() code faults. This is not a debug build, so the assertions above didn't catch this condition. I don't know if this is repeatable; we've never seen it before. The machine was doing a lot of port I/O at the time (generating pdf report files). This is mostly an FYI at this point. If someone thinks they recognize the problem and can point to a fix in a later release that'd be great. /Mikael From Michael.K.Schmidt@REDACTED Wed Jun 18 17:55:54 2014 From: Michael.K.Schmidt@REDACTED (Michael.K.Schmidt@REDACTED) Date: Wed, 18 Jun 2014 10:55:54 -0500 Subject: [erlang-bugs] Error on running Erlang SSH server In-Reply-To: References: <539AF2B4.4030402@erlang.org> <558EB510-AAD6-4ED1-86FC-676B524686C4@rogvall.se> Message-ID: Hi Mario, I noticed that you had "Putty" in your dir path ("C:/Utility/Putty/ssh_daemon"). Is your private key a .ppk file? Putty on Windows uses a different file format for its keys than what the Erlang ssh library is expecting. From "PuTTY Key Generator", select "Conversions" -> "Export OpenSSH key" and save it as "C:/Utility/Putty/ssh_daemon/ssh_host_rsa_key". Hope that helps, Mike _____________________________________________________________________________________ Michael Schmidt | APC by Schneider Electric | End User Business Group - IT Business | United States | Firmware Engineer Phone: +636-300-2300 ext. 11480 | Fax: +636-300-2333 | Mobile: +636-744-6326 Email: michael.k.schmidt@REDACTED | Site: www.schneider-electric.com | Address: 801 Corporate Centre Drive, O'Fallon, MO 63368 *** Please consider the environment before printing this e-mail Mario Santoro To Sent by: Tony Rogvall , erlang-bugs-bounc "hans@REDACTED" es@REDACTED , cc "erlang-bugs@REDACTED" 06/16/2014 11:22 AM Subject Re: [erlang-bugs] Error on running Erlang SSH server Hi Tony, you were right about the wrong tuple where I specified the system_dir. Tried with the following: >{ok, Sshd} = ssh:daemon(8988, [{auth_methods, "password"}, {user_passwords, [{"mario", "mariopasswd"}]}, {system_dir, "C:/Utility/Putty/ssh_daemon"} ]). ?{ok,<0.644.0>} but at client connection: >{ok, ConnectionRef} = ssh:connect("E7E4115BF83167", 8988, [{user, "mario"}, {password, "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, {silently_accept_hosts, true}, {user_interaction, false} ], 5000). ** exception error: no match of right hand side value {error,"Internal error"} I got the same error. The host keys are installed in the specified paths. Hi, which ssh version are you running? Hi Hans, from the output of ssh:module_info()., I get: ? {version,"4.9"}, {time,{2013,2,25,19,38,30}} ? Thanks all so far for your help. /Mario From: Tony Rogvall [mailto:tony@REDACTED] Sent: venerd? 13 giugno 2014 15:14 To: hans@REDACTED Cc: Mario Santoro; erlang-bugs@REDACTED Subject: Re: [erlang-bugs] Error on running Erlang SSH server On 13 jun 2014, at 14:46, Hans Nilsson wrote: Hi, which ssh version are you running? /Hans On 2014-06-12 17:03, Mario Santoro wrote: Hi, I?m trying to run an SSH server in Erlang and test a connection over SSH. I?ve generated an RSA keys pair (with NO passphrase) for the SSH system and put the private key into ?C:/Utility/Putty/ssh_daemon? directory, while the user public_key is into ?C:/Utility/Putty/public_key? directory. I?m running both the server and the client on the same PC, into two different Erlang nodes. The SSH server starts fine: (node1@REDACTED)1> ssh:start(). ok (node1@REDACTED)2> {ok, Sshd} = ssh:daemon(8988, [{auth_methods, "password"}, {user_passwords, [{"mario", "mariopasswd"},{system_dir, "C:/Utility/Putty/ssh_daemon"}]} ]). {ok,<0.54.0>} Could the problem be that {system_dir, "C:/Utility/Putty/ssh_daemon"} is specified in the {user_passwords,..} list and not as a separate option. ? /Tony but on receiving a connection from the client: (node2@REDACTED)1> ssh:start(). ok (node2@REDACTED)2> {ok, ConnectionRef} = ssh:connect ("E7E4115BF83167", 8988, [{user, "mario"}, {password, "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, {silently_accept_hosts, true}, {user_interaction, false} ], 5000). ** exception error: no match of right hand side value {error,"Internal error"} the SSH server application is crashing with the following error: (node1@REDACTED)3> =ERROR REPORT==== 29-May-2014::17:44:58 === Erlang ssh connection handler failed with reason: function_clause , Stacktace: [{ssh_file,identity_pass_phrase, [undefined], [{file,"ssh_file.erl"},{line,222}]}, {ssh_file,host_key,2,[{file,"ssh_file.erl"},{line,53}]}, {ssh_transport,get_host_key,1, [{file,"ssh_transport.erl"},{line,412}]}, {ssh_transport,handle_kexdh_init,2, [{file,"ssh_transport.erl"},{line,314}]}, {ssh_connection_handler,key_exchange,2, [{file,"ssh_connection_handler.erl"}, {line,201}]}, {gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,494}]}, {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}] please report this to erlang-bugs@REDACTED This happens at each client connection attempt. Could you please help me on this issue? Thank you in advance for your help. Regards, /Mario MARIO SANTORO CD Media & Application Ericsson Telecomunicazioni SpA SCM Region Via Anagnina, 203 00118, Rome, ITALY Phone +39 06 7258 8404 Fax +39 06 7258 4289 Mobile +39 335 699 5215 mario.santoro@REDACTED www.ericsson.com This Communication is Confidential. We only send and receive email on the basis of the terms set out at www.ericsson.com/email_disclaimer _______________________________________________ erlang-bugs mailing list erlang-bugs@REDACTED http://erlang.org/mailman/listinfo/erlang-bugs _______________________________________________ erlang-bugs mailing list erlang-bugs@REDACTED http://erlang.org/mailman/listinfo/erlang-bugs "Installing applications can lead to corruption over time. Applications gradually write over each other's libraries, partial upgrades occur, user and system errors happen, and minute changes may be unnoticeable and difficult to fix" ______________________________________________________________________ This email has been scanned by the Symantec Email Security.cloud service. ______________________________________________________________________ _______________________________________________ erlang-bugs mailing list erlang-bugs@REDACTED http://erlang.org/mailman/listinfo/erlang-bugs From erlangsiri@REDACTED Thu Jun 19 11:26:28 2014 From: erlangsiri@REDACTED (Siri Hansen) Date: Thu, 19 Jun 2014 11:26:28 +0200 Subject: [erlang-bugs] Allow code upgrade for the code_server itself In-Reply-To: References: Message-ID: Hi Stavros, I'm sorry for the very long delay! Are you still struggling with this problem or did you find a way around it? Would a code_change system message while the process is suspended possibly solve the problem? Regards /siri 2014-03-10 23:02 GMT+01:00 Stavros Aronis : > Hello! > > I am playing around with code instrumentation and trying to hack the code > server so that it applies some transformation whenever it loads *any* > module. The hack itself is relatively simple: > > 1) Instrument and reload any already loaded modules (come to think about > it, during this process more modules may be loaded, but let's assume a > fixpoint). This is to avoid the case where in order to load A, you have to > instrument A, and the instrumenter itself needs a call to X, which is not > yet loaded so you have to load X, so you have to instrument X, etc... > 2) Get the Core Erlang code of the codeserver and wrap the second argument > of erlang:load_module (Line 1264) with a call to my instrumenter (which is > a function from binary() -> binary()) > 3) Load the patched code_server code > 4) Move the code_server process from the old code to the new one. > > I am having trouble with the last step. As far as I understand it, the > reason is that the call to system_continue (Line 184) is not qualified, as > is the similar call in sys.erl (Line 324). > > Is there a reason why this is so? Is there any possibility for this to be > patched? > > Cheers, > > Stavros > > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mario.santoro@REDACTED Thu Jun 19 13:26:49 2014 From: mario.santoro@REDACTED (Mario Santoro) Date: Thu, 19 Jun 2014 11:26:49 +0000 Subject: [erlang-bugs] Error on running Erlang SSH server In-Reply-To: References: <539AF2B4.4030402@erlang.org> <558EB510-AAD6-4ED1-86FC-676B524686C4@rogvall.se> Message-ID: Hi Mike, the problem was really that! From 'puttygen' I just did 'save private key' as "C:/Utility/Putty/ssh_daemon/ssh_host_rsa_key" , which was not the openssh file key format. Selecting "Conversion" for the private key the problem is over . Thanks a lot for your help!!! Cheers, /Mario -----Original Message----- From: Michael.K.Schmidt@REDACTED [mailto:Michael.K.Schmidt@REDACTED] Sent: mercoled? 18 giugno 2014 17:56 To: Mario Santoro Cc: erlang-bugs@REDACTED; erlang-bugs-bounces@REDACTED; hans@REDACTED; Tony Rogvall Subject: Re: [erlang-bugs] Error on running Erlang SSH server Hi Mario, I noticed that you had "Putty" in your dir path ("C:/Utility/Putty/ssh_daemon"). Is your private key a .ppk file? Putty on Windows uses a different file format for its keys than what the Erlang ssh library is expecting. From "PuTTY Key Generator", select "Conversions" -> "Export OpenSSH key" and save it as "C:/Utility/Putty/ssh_daemon/ssh_host_rsa_key". Hope that helps, Mike _____________________________________________________________________________________ Michael Schmidt | APC by Schneider Electric | End User Business Group - IT Business | United States | Firmware Engineer Phone: +636-300-2300 ext. 11480 | Fax: +636-300-2333 | Mobile: +636-744-6326 Email: michael.k.schmidt@REDACTED | Site: www.schneider-electric.com | Address: 801 Corporate Centre Drive, O'Fallon, MO 63368 *** Please consider the environment before printing this e-mail Mario Santoro To Sent by: Tony Rogvall , erlang-bugs-bounc "hans@REDACTED" es@REDACTED , cc "erlang-bugs@REDACTED" 06/16/2014 11:22 AM Subject Re: [erlang-bugs] Error on running Erlang SSH server Hi Tony, you were right about the wrong tuple where I specified the system_dir. Tried with the following: >{ok, Sshd} = ssh:daemon(8988, [{auth_methods, "password"}, {user_passwords, [{"mario", "mariopasswd"}]}, {system_dir, "C:/Utility/Putty/ssh_daemon"} ]). ?{ok,<0.644.0>} but at client connection: >{ok, ConnectionRef} = ssh:connect("E7E4115BF83167", 8988, [{user, "mario"}, {password, "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, {silently_accept_hosts, true}, {user_interaction, false} ], 5000). ** exception error: no match of right hand side value {error,"Internal error"} I got the same error. The host keys are installed in the specified paths. Hi, which ssh version are you running? Hi Hans, from the output of ssh:module_info()., I get: ? {version,"4.9"}, {time,{2013,2,25,19,38,30}} ? Thanks all so far for your help. /Mario From: Tony Rogvall [mailto:tony@REDACTED] Sent: venerd? 13 giugno 2014 15:14 To: hans@REDACTED Cc: Mario Santoro; erlang-bugs@REDACTED Subject: Re: [erlang-bugs] Error on running Erlang SSH server On 13 jun 2014, at 14:46, Hans Nilsson wrote: Hi, which ssh version are you running? /Hans On 2014-06-12 17:03, Mario Santoro wrote: Hi, I?m trying to run an SSH server in Erlang and test a connection over SSH. I?ve generated an RSA keys pair (with NO passphrase) for the SSH system and put the private key into ?C:/Utility/Putty/ssh_daemon? directory, while the user public_key is into ?C:/Utility/Putty/public_key? directory. I?m running both the server and the client on the same PC, into two different Erlang nodes. The SSH server starts fine: (node1@REDACTED)1> ssh:start(). ok (node1@REDACTED)2> {ok, Sshd} = ssh:daemon(8988, [{auth_methods, "password"}, {user_passwords, [{"mario", "mariopasswd"},{system_dir, "C:/Utility/Putty/ssh_daemon"}]} ]). {ok,<0.54.0>} Could the problem be that {system_dir, "C:/Utility/Putty/ssh_daemon"} is specified in the {user_passwords,..} list and not as a separate option. ? /Tony but on receiving a connection from the client: (node2@REDACTED)1> ssh:start(). ok (node2@REDACTED)2> {ok, ConnectionRef} = ssh:connect ("E7E4115BF83167", 8988, [{user, "mario"}, {password, "mariopasswd"}, {user_dir, "C:/Utility/Putty/public_key"}, {silently_accept_hosts, true}, {user_interaction, false} ], 5000). ** exception error: no match of right hand side value {error,"Internal error"} the SSH server application is crashing with the following error: (node1@REDACTED)3> =ERROR REPORT==== 29-May-2014::17:44:58 === Erlang ssh connection handler failed with reason: function_clause , Stacktace: [{ssh_file,identity_pass_phrase, [undefined], [{file,"ssh_file.erl"},{line,222}]}, {ssh_file,host_key,2,[{file,"ssh_file.erl"},{line,53}]}, {ssh_transport,get_host_key,1, [{file,"ssh_transport.erl"},{line,412}]}, {ssh_transport,handle_kexdh_init,2, [{file,"ssh_transport.erl"},{line,314}]}, {ssh_connection_handler,key_exchange,2, [{file,"ssh_connection_handler.erl"}, {line,201}]}, {gen_fsm,handle_msg,7,[{file,"gen_fsm.erl"},{line,494}]}, {proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,239}]}] please report this to erlang-bugs@REDACTED This happens at each client connection attempt. Could you please help me on this issue? Thank you in advance for your help. Regards, /Mario MARIO SANTORO CD Media & Application Ericsson Telecomunicazioni SpA SCM Region Via Anagnina, 203 00118, Rome, ITALY Phone +39 06 7258 8404 Fax +39 06 7258 4289 Mobile +39 335 699 5215 mario.santoro@REDACTED www.ericsson.com This Communication is Confidential. We only send and receive email on the basis of the terms set out at www.ericsson.com/email_disclaimer _______________________________________________ erlang-bugs mailing list erlang-bugs@REDACTED http://erlang.org/mailman/listinfo/erlang-bugs _______________________________________________ erlang-bugs mailing list erlang-bugs@REDACTED http://erlang.org/mailman/listinfo/erlang-bugs "Installing applications can lead to corruption over time. Applications gradually write over each other's libraries, partial upgrades occur, user and system errors happen, and minute changes may be unnoticeable and difficult to fix" ______________________________________________________________________ This email has been scanned by the Symantec Email Security.cloud service. ______________________________________________________________________ _______________________________________________ erlang-bugs mailing list erlang-bugs@REDACTED http://erlang.org/mailman/listinfo/erlang-bugs From aronisstav@REDACTED Mon Jun 23 11:48:04 2014 From: aronisstav@REDACTED (Stavros Aronis) Date: Mon, 23 Jun 2014 11:48:04 +0200 Subject: [erlang-bugs] Allow code upgrade for the code_server itself In-Reply-To: References: Message-ID: Hi Siri, a lot of time has passed indeed, and I have put in place a different kind of instrumentation, which works for what I want to do. Unfortunately I currently don't have the time to test again, but I suspect that the issue remains, for the reasons I explained. Here is another bug, admittedly unrelated (since I am not trying to update the code of the code_server *process*): 1) Copied code_server.erl to my home directory and added an "erlang:display(foo)" call before the single erlang:load_module/1 call in the module. 2) Run the following: $ erlc code_server.erl $ erl -nostick Erlang/OTP 17 [erts-6.0] [source-07b8f44] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] Eshell V6.0 (abort with ^G) 1> l(code_server). {module,code_server} 2> code:which(code_server). "/home/stavros/code_server.beam" 3> erlang:check_old_code(code_server). true 4> code:soft_purge(code_server). true 5> l(te *TAB* Crash dump was written to: erl_crash.dump Internal error: Invalid reference count found on #Fun: About to erase fun still referred by code. Aborted I would expect the soft_purge to fail and the system not to crash. Regards, Stavros On Thu, Jun 19, 2014 at 11:26 AM, Siri Hansen wrote: > Hi Stavros, I'm sorry for the very long delay! Are you still struggling > with this problem or did you find a way around it? Would a code_change > system message while the process is suspended possibly solve the problem? > Regards > /siri > > > 2014-03-10 23:02 GMT+01:00 Stavros Aronis : > >> Hello! >> >> I am playing around with code instrumentation and trying to hack the code >> server so that it applies some transformation whenever it loads *any* >> module. The hack itself is relatively simple: >> >> 1) Instrument and reload any already loaded modules (come to think about >> it, during this process more modules may be loaded, but let's assume a >> fixpoint). This is to avoid the case where in order to load A, you have to >> instrument A, and the instrumenter itself needs a call to X, which is not >> yet loaded so you have to load X, so you have to instrument X, etc... >> 2) Get the Core Erlang code of the codeserver and wrap the second >> argument of erlang:load_module (Line 1264) with a call to my instrumenter >> (which is a function from binary() -> binary()) >> 3) Load the patched code_server code >> 4) Move the code_server process from the old code to the new one. >> >> I am having trouble with the last step. As far as I understand it, the >> reason is that the call to system_continue (Line 184) is not qualified, as >> is the similar call in sys.erl (Line 324). >> >> Is there a reason why this is so? Is there any possibility for this to be >> patched? >> >> Cheers, >> >> Stavros >> >> >> _______________________________________________ >> erlang-bugs mailing list >> erlang-bugs@REDACTED >> http://erlang.org/mailman/listinfo/erlang-bugs >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From fredrikelinder@REDACTED Tue Jun 24 14:30:26 2014 From: fredrikelinder@REDACTED (Fredrik Linder) Date: Tue, 24 Jun 2014 14:30:26 +0200 Subject: [erlang-bugs] malloc error: can't allocate region In-Reply-To: References: Message-ID: I have 16Gb RAM 10Gb was in use before running the test At time of crash 11.5Gb was in use (according to Activity Monitor) /Fredrik http://whosawesome.com/ On Tue, Jun 24, 2014 at 1:46 PM, Fredrik Linder wrote: > Hello > > I got a malloc error when running proper tests, thought you wanted to know: > > ## system > > * R15B03-1 compiled using kerl > * default kerl compilation flags + see attached.kerlrc > * OS X 10.9.3, Build 13D65 > * proper git sha: 043f68f2102f366abaa5c5dbf2b55b833d7e90bd > * rebar git sha: 24ce11c3811424d7ee50d8ce59c00ceb3fc6bb2f > > ## output > > -*- mode: compilation; default-directory: "~/PLAT-1823/genq/" -*- > Compilation started at Tue Jun 24 13:21:46 > > cd ~/PLAT-1823/genq/ && PATH=$HOME/PLAT-1823/rebar:$PATH make check-only > s=genq_config > rebar eunit apps=genq suites=genq_config > ==> genq (eunit) > Compiled test/genq_config_tests.erl > .........................................................................beam.smp(10526,0xb022b000) > malloc: *** mach_vm_map(size=1140850688) failed (error code=3) > *** error: can't allocate region > *** set a breakpoint in malloc_error_break to debug > beam.smp(10526,0xb022b000) malloc: *** mach_vm_map(size=1140850688) failed > (error code=3) > *** error: can't allocate region > *** set a breakpoint in malloc_error_break to debug > beam.smp(10526,0xb022b000) malloc: *** mach_vm_map(size=1140330496) failed > (error code=3) > *** error: can't allocate region > *** set a breakpoint in malloc_error_break to debug > beam.smp(10526,0xb022b000) malloc: *** mach_vm_map(size=1140330496) failed > (error code=3) > *** error: can't allocate region > *** set a breakpoint in malloc_error_break to debug > > Crash dump was written to: erl_crash.dump > eheap_alloc: Cannot allocate 1140328500 bytes of memory (of type "heap"). > make: *** [check-only] Abort trap: 6 > > Compilation exited abnormally with code 2 at Tue Jun 24 13:22:43 > > /Fredrik > http://whosawesome.com/ > -------------- next part -------------- An HTML attachment was scrubbed... URL: From lukas@REDACTED Tue Jun 24 15:21:10 2014 From: lukas@REDACTED (Lukas Larsson) Date: Tue, 24 Jun 2014 15:21:10 +0200 Subject: [erlang-bugs] malloc error: can't allocate region In-Reply-To: References: Message-ID: <53A97B46.1030303@erlang.org> Hello, This is most likely due to virtual/physical memory fragmentation of the Erlang VM process. Erlang process heaps require contiguous memory areas and when heaps grow very big it becomes more and more difficult to find slots where they fit. The only fix I can give you is to break the process into smaller processes that do not require such large heaps, or buy more RAM :) There have been internal discussions on how to solve this better, but they are far from fruition as it would entail a rewrite to the garbage collector for Erlang. Lukas On 24/06/14 14:30, Fredrik Linder wrote: > I have 16Gb RAM > 10Gb was in use before running the test > At time of crash 11.5Gb was in use (according to Activity Monitor) > > /Fredrik > http://whosawesome.com/ > > > On Tue, Jun 24, 2014 at 1:46 PM, Fredrik Linder > > wrote: > > Hello > > I got a malloc error when running proper tests, thought you wanted > to know: > > ## system > > * R15B03-1 compiled using kerl > * default kerl compilation flags + see attached.kerlrc > * OS X 10.9.3, Build 13D65 > * proper git sha: 043f68f2102f366abaa5c5dbf2b55b833d7e90bd > * rebar git sha: 24ce11c3811424d7ee50d8ce59c00ceb3fc6bb2f > > ## output > > -*- mode: compilation; default-directory: "~/PLAT-1823/genq/" -*- > Compilation started at Tue Jun 24 13:21:46 > > cd ~/PLAT-1823/genq/ && PATH=$HOME/PLAT-1823/rebar:$PATH make > check-only s=genq_config > rebar eunit apps=genq suites=genq_config > ==> genq (eunit) > Compiled test/genq_config_tests.erl > .........................................................................beam.smp(10526,0xb022b000) > malloc: *** mach_vm_map(size=1140850688) failed (error code=3) > *** error: can't allocate region > *** set a breakpoint in malloc_error_break to debug > beam.smp(10526,0xb022b000) malloc: *** > mach_vm_map(size=1140850688) failed (error code=3) > *** error: can't allocate region > *** set a breakpoint in malloc_error_break to debug > beam.smp(10526,0xb022b000) malloc: *** > mach_vm_map(size=1140330496) failed (error code=3) > *** error: can't allocate region > *** set a breakpoint in malloc_error_break to debug > beam.smp(10526,0xb022b000) malloc: *** > mach_vm_map(size=1140330496) failed (error code=3) > *** error: can't allocate region > *** set a breakpoint in malloc_error_break to debug > > Crash dump was written to: erl_crash.dump > eheap_alloc: Cannot allocate 1140328500 bytes of memory (of type > "heap"). > make: *** [check-only] Abort trap: 6 > > Compilation exited abnormally with code 2 at Tue Jun 24 13:22:43 > > /Fredrik > http://whosawesome.com/ > > > > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs -------------- next part -------------- An HTML attachment was scrubbed... URL: From define.null@REDACTED Tue Jun 24 16:56:32 2014 From: define.null@REDACTED (Vasily Demidenok) Date: Tue, 24 Jun 2014 18:56:32 +0400 Subject: [erlang-bugs] Weird behaviour of gen_tcp:send/2 and erlang:port_command/3 with nosuspend to the same port on R16B03 Message-ID: Hello list, we faced with some gen_tcp related problems after switch from erlang R15B03 to R16B03-01 The problem is as following: When server produce data faster then consumer can handle, after the out server's buffers are full and incoming client's buffers are full gen_tcp:send/2 call on server side blocks forever in erts_internal:port_command/3. After this, even when client consumes all the data and the buffers are empty server process remains to be suspended in that call This problem does not occur always, but quite often. Some details on implementation are below, I also shrink the example to this small app so you can check the code: https://github.com/define-null/tcp_failing_ex Server is implemented in such a way, that it listen on 8899 port, then when client connect to it spawn main srv process and plenty of workers, which start to write to this port after client send some special msg. The main process is responsible for commands from the client and send responses via gen_tcp:send/2, while workers try to write some stream data to the client and use erang:port_command with no-suspend. So workers send only up-to-date data, dropping any in case client is slow. The behaviour which we see is as following: At first phase producer fills OS and erlang driver's buffers. Consumer read data as it arrives and server drop data which it cannot send. So we see buffer size growing on both side out queue of the server and in queue of the client respectively After some moment in time, i guess when the buffers are completely filled, server try respond to ping message of the client, using gen_tcp:send/2 call. After that, it blocks there forever, even after client consumes all the messages. The situation does not change and the srv process remains in the suspended state, while it's incoming buffer begins to grow when client send more ping messages. Below is the output on the system with two slow clients, where for the first client server's process is already blocked in gen_tcp:send/2 call, while the second is served well. Every 2.0s: netstat -al | grep 8899 Tue Jun 24 16:34:51 2014 tcp4 36 0 localhost.8899 localhost.63263 ESTABLISHED tcp4 0 0 localhost.63263 localhost.8899 ESTABLISHED tcp4 0 130990 localhost.8899 localhost.63257 ESTABLISHED tcp4 619190 0 localhost.63257 localhost.8899 ESTABLISHED tcp4 0 0 *.8899 *.* LISTEN This is the output for the client process from github example, where we see that after send operation (ping msg) no incoming msg come any more. {{2014,6,24},{16,33,28}}: msg {{2014,6,24},{16,33,28}}: msg {{2014,6,24},{16,33,28}}: msg {{2014,6,24},{16,33,28}}: msg {{2014,6,24},{16,33,28}}: msg {{2014,6,24},{16,33,28}}: msg {{2014,6,24},{16,33,28}}: msg {{2014,6,24},{16,33,28}}: msg {{2014,6,24},{16,33,28}}: msg {{2014,6,24},{16,33,28}}: msg {{2014,6,24},{16,33,48}} before send {{2014,6,24},{16,33,48}} after send ok {{2014,6,24},{16,34,9}} before send {{2014,6,24},{16,34,9}} after send ok {{2014,6,24},{16,34,30}} before send {{2014,6,24},{16,34,30}} after send ok {{2014,6,24},{16,34,51}} before send {{2014,6,24},{16,34,51}} after send ok {{2014,6,24},{16,35,12}} before send .... Server blocked process output: {{2014,6,24},{16,33,21}}: <0.95.0> ping {{2014,6,24},{16,33,21}} bsend: <0.95.0> {{2014,6,24},{16,33,21}} asend: <0.95.0> ok {{2014,6,24},{16,33,48}}: <0.95.0> ping {{2014,6,24},{16,33,48}} bsend: <0.95.0> %% (no asend message after it) (tcp_failing_node@REDACTED)1> erlang:process_info(pid(0,95,0)). [{current_function,{erts_internal,port_command,3}}, {initial_call,{proc_lib,init_p,5}}, Bug is not always reproducible, but occurs quite often. The problem is that even after server's out buffers are empty data does not arrive to the client, and incoming buffer grow as client send ping messages to the server. (So erlang:port_command/3 with no-suspend always return false when another main server process for this connection is suspended in gen_tcp:send/2) And then it's getting only worse as already mentioned Every 2.0s: netstat -al | grep 8899 Tue Jun 24 16:56:59 2014 tcp4 804 0 localhost.8899 localhost.63263 ESTABLISHED tcp4 0 0 localhost.63263 localhost.8899 ESTABLISHED tcp4 0 0 localhost.8899 localhost.63257 ESTABLISHED tcp4 0 0 localhost.63257 localhost.8899 ESTABLISHED tcp4 0 0 *.8899 *.* LISTEN We faced with this after switching to R16B03 from R15B03, I know there were some changes in port_command handling, i guess why we got such behaviour? -------------- next part -------------- An HTML attachment was scrubbed... URL: From fredrikelinder@REDACTED Tue Jun 24 13:46:39 2014 From: fredrikelinder@REDACTED (Fredrik Linder) Date: Tue, 24 Jun 2014 13:46:39 +0200 Subject: [erlang-bugs] malloc error: can't allocate region Message-ID: Hello I got a malloc error when running proper tests, thought you wanted to know: ## system * R15B03-1 compiled using kerl * default kerl compilation flags + see attached.kerlrc * OS X 10.9.3, Build 13D65 * proper git sha: 043f68f2102f366abaa5c5dbf2b55b833d7e90bd * rebar git sha: 24ce11c3811424d7ee50d8ce59c00ceb3fc6bb2f ## output -*- mode: compilation; default-directory: "~/PLAT-1823/genq/" -*- Compilation started at Tue Jun 24 13:21:46 cd ~/PLAT-1823/genq/ && PATH=$HOME/PLAT-1823/rebar:$PATH make check-only s=genq_config rebar eunit apps=genq suites=genq_config ==> genq (eunit) Compiled test/genq_config_tests.erl .........................................................................beam.smp(10526,0xb022b000) malloc: *** mach_vm_map(size=1140850688) failed (error code=3) *** error: can't allocate region *** set a breakpoint in malloc_error_break to debug beam.smp(10526,0xb022b000) malloc: *** mach_vm_map(size=1140850688) failed (error code=3) *** error: can't allocate region *** set a breakpoint in malloc_error_break to debug beam.smp(10526,0xb022b000) malloc: *** mach_vm_map(size=1140330496) failed (error code=3) *** error: can't allocate region *** set a breakpoint in malloc_error_break to debug beam.smp(10526,0xb022b000) malloc: *** mach_vm_map(size=1140330496) failed (error code=3) *** error: can't allocate region *** set a breakpoint in malloc_error_break to debug Crash dump was written to: erl_crash.dump eheap_alloc: Cannot allocate 1140328500 bytes of memory (of type "heap"). make: *** [check-only] Abort trap: 6 Compilation exited abnormally with code 2 at Tue Jun 24 13:22:43 /Fredrik http://whosawesome.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: erl_crash.dump Type: application/octet-stream Size: 1480284 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: genq_config_base.erl Type: application/octet-stream Size: 1249 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: genq_config.erl Type: application/octet-stream Size: 5612 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: genq_config_tests.erl Type: application/octet-stream Size: 6354 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: .kerlrc Type: application/octet-stream Size: 117 bytes Desc: not available URL: From lukas@REDACTED Tue Jun 24 19:28:36 2014 From: lukas@REDACTED (Lukas Larsson) Date: Tue, 24 Jun 2014 19:28:36 +0200 Subject: [erlang-bugs] Weird behaviour of gen_tcp:send/2 and erlang:port_command/3 with nosuspend to the same port on R16B03 In-Reply-To: References: Message-ID: <53A9B544.1080508@erlang.org> Hello, I was able to reproduce your testcase after removing all the "msg" printouts and starting a couple of clients at the same time. It seems that the sockets are hitting the high_msgq_watermark limit and then as data gets flushes they are not set to run again. I'll see if I can dig out what it is that is causing this behavior. Lukas On 24/06/14 16:56, Vasily Demidenok wrote: > Hello list, we faced with some gen_tcp related problems after switch > from erlang R15B03 to R16B03-01 > > The problem is as following: When server produce data faster then > consumer can handle, after > the out server's buffers are full and incoming client's buffers are > full gen_tcp:send/2 call on server side blocks forever in > erts_internal:port_command/3. After this, even when client consumes all > the data and the buffers are empty server process remains to be > suspended in that call > > This problem does not occur always, but quite often. > > Some details on implementation are below, I also shrink the example to > this small app so you can check the code: > https://github.com/define-null/tcp_failing_ex > > Server is implemented in such a way, that it listen on 8899 port, then > when client connect to it spawn main srv process and plenty of > workers, which start to write to this port after client send some > special msg. The main process is responsible for commands from the > client and send responses via gen_tcp:send/2, while workers try to > write some stream data to the client and use erang:port_command with > no-suspend. So workers send only up-to-date data, dropping any in case > client is slow. > > The behaviour which we see is as following: > At first phase producer fills OS and erlang driver's buffers. Consumer > read data as it arrives and server drop data which it cannot send. So > we see buffer size growing on both side out queue of the server and in > queue of the client respectively > > After some moment in time, i guess when the buffers are completely > filled, server try respond to > ping message of the client, using gen_tcp:send/2 call. After that, it > blocks there forever, even after client consumes all the messages. The > situation does not change and the srv process remains in the suspended > state, while it's incoming buffer begins to grow when client send more > ping messages. > > Below is the output on the system with two slow clients, where for the > first client server's process is already blocked in gen_tcp:send/2 > call, while the second is served well. > > Every 2.0s: netstat -al | grep 8899 Tue Jun 24 > 16:34:51 2014 > > tcp4 36 0 localhost.8899 localhost.63263 > ESTABLISHED > tcp4 0 0 localhost.63263 localhost.8899 > ESTABLISHED > tcp4 0 130990 localhost.8899 localhost.63257 > ESTABLISHED > tcp4 619190 0 localhost.63257 localhost.8899 ESTABLISHED > tcp4 0 0 *.8899 *.* LISTEN > > This is the output for the client process from github example, where > we see that > after send operation (ping msg) no incoming msg come any more. > {{2014,6,24},{16,33,28}}: msg > {{2014,6,24},{16,33,28}}: msg > {{2014,6,24},{16,33,28}}: msg > {{2014,6,24},{16,33,28}}: msg > {{2014,6,24},{16,33,28}}: msg > {{2014,6,24},{16,33,28}}: msg > {{2014,6,24},{16,33,28}}: msg > {{2014,6,24},{16,33,28}}: msg > {{2014,6,24},{16,33,28}}: msg > {{2014,6,24},{16,33,28}}: msg > {{2014,6,24},{16,33,48}} before send > {{2014,6,24},{16,33,48}} after send ok > {{2014,6,24},{16,34,9}} before send > {{2014,6,24},{16,34,9}} after send ok > {{2014,6,24},{16,34,30}} before send > {{2014,6,24},{16,34,30}} after send ok > {{2014,6,24},{16,34,51}} before send > {{2014,6,24},{16,34,51}} after send ok > {{2014,6,24},{16,35,12}} before send > .... > > Server blocked process output: > > {{2014,6,24},{16,33,21}}: <0.95.0> ping > {{2014,6,24},{16,33,21}} bsend: <0.95.0> > {{2014,6,24},{16,33,21}} asend: <0.95.0> ok > {{2014,6,24},{16,33,48}}: <0.95.0> ping > {{2014,6,24},{16,33,48}} bsend: <0.95.0> > %% (no asend message after it) > > (tcp_failing_node@REDACTED > )1> > erlang:process_info(pid(0,95,0)). > [{current_function,{erts_internal,port_command,3}}, > {initial_call,{proc_lib,init_p,5}}, > > Bug is not always reproducible, but occurs quite often. The problem is > that even > after server's out buffers are empty data does not arrive to the > client, and incoming buffer grow > as client send ping messages to the server. (So erlang:port_command/3 > with no-suspend always return false > when another main server process for this connection is suspended in > gen_tcp:send/2) > > And then it's getting only worse as already mentioned > > Every 2.0s: netstat -al | grep 8899 Tue Jun 24 > 16:56:59 2014 > > tcp4 804 0 localhost.8899 localhost.63263 > ESTABLISHED > tcp4 0 0 localhost.63263 localhost.8899 > ESTABLISHED > tcp4 0 0 localhost.8899 localhost.63257 > ESTABLISHED > tcp4 0 0 localhost.63257 localhost.8899 > ESTABLISHED > tcp4 0 0 *.8899 *.* LISTEN > > We faced with this after switching to R16B03 from R15B03, I know there > were some changes in port_command handling, i guess why we got such > behaviour? > > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs -------------- next part -------------- An HTML attachment was scrubbed... URL: From dmkolesnikov@REDACTED Wed Jun 25 10:47:31 2014 From: dmkolesnikov@REDACTED (Dmitry Kolesnikov) Date: Wed, 25 Jun 2014 11:47:31 +0300 Subject: [erlang-bugs] bug at alarm_handler or at documentation Message-ID: <1658D9CC-B62A-44AB-A7A1-CA50B2D304C0@gmail.com> Hello, The alarm_handler documentation says: http://www.erlang.org/doc/man/alarm_handler.html ? CLIP ? clear_alarm(AlarmId) -> void() Clears all alarms with id AlarmId. ? CLIP ? but code does not clears all alarms, it clears the last one https://github.com/erlang/otp/blob/maint/lib/sasl/src/alarm_handler.erl#L83 ? CLIP ? {ok, lists:keydelete(AlarmId, 1, Alarms)}; ? CLIP ? I can patch alarm_handler if needed but I think the bug in documentation? Best Regards, Dmitry From g@REDACTED Wed Jun 25 19:49:03 2014 From: g@REDACTED (Garrett Smith) Date: Wed, 25 Jun 2014 12:49:03 -0500 Subject: [erlang-bugs] Online docs location for erlang module Message-ID: This link is no longer useful: http://www.erlang.org/doc/man/erlang.html The link to "erlang(3)" in the erts reference manual points to the same document. Garrett From kenneth@REDACTED Wed Jun 25 21:14:28 2014 From: kenneth@REDACTED (Kenneth Lundin) Date: Wed, 25 Jun 2014 21:14:28 +0200 Subject: [erlang-bugs] Online docs location for erlang module In-Reply-To: References: Message-ID: There is a problem with the script that makes the online version (removing application version numbers among other things) we will take a look. The html docs that can be downloaded and installed locally is correct. This online link http://www.erlang.org/documentation/doc-6.1/erts -6.1/doc/html/erlang.html works, the script is not involved here. /Kenneth, Erlang/OTP Ericsson On Wed, Jun 25, 2014 at 7:49 PM, Garrett Smith wrote: > This link is no longer useful: > > http://www.erlang.org/doc/man/erlang.html > > The link to "erlang(3)" in the erts reference manual points to the > same document. > > Garrett > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs > -------------- next part -------------- An HTML attachment was scrubbed... URL: From magnus.liden@REDACTED Fri Jun 27 10:26:36 2014 From: magnus.liden@REDACTED (Magnus Liden) Date: Fri, 27 Jun 2014 10:26:36 +0200 Subject: [erlang-bugs] Online docs location for erlang module In-Reply-To: References: Message-ID: <53AD2ABC.5010708@ericsson.com> Hi The online documentation is now fixed and the script has been updated to address the problem of the flattened doc structure. /Magnus On 06/25/2014 09:14 PM, Kenneth Lundin wrote: > There is a problem with the script that makes the online version > (removing application version numbers among other things) we will take > a look. The html docs that can be downloaded and installed locally is > correct. > This online link > http://www.erlang.org/documentation/doc-6.1/erts-6.1/doc/html/erlang.html > works, the script is not involved here. > > /Kenneth, Erlang/OTP Ericsson > > > On Wed, Jun 25, 2014 at 7:49 PM, Garrett Smith > wrote: > > This link is no longer useful: > > http://www.erlang.org/doc/man/erlang.html > > The link to "erlang(3)" in the erts reference manual points to the > same document. > > Garrett > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs > > > > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs -------------- next part -------------- An HTML attachment was scrubbed... URL: From louis-philippe.gauthier@REDACTED Fri Jun 27 12:01:30 2014 From: louis-philippe.gauthier@REDACTED (Louis-Philippe Gauthier) Date: Fri, 27 Jun 2014 06:01:30 -0400 Subject: [erlang-bugs] filelib:ensure_dir/1 broken with symlinks Message-ID: filelib:ensure_dir/1 is broken when there's a symlink in the path. the offending commit: https://github.com/erlang/otp/commit/f11aabdc9fec593c31e6c4f3fa25c1707e9c35df e.g. ~ $ mkdir test ~ $ ln -s test test2 ~ $ erl Erlang/OTP 17 [erts-6.1] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] [dtrace] Eshell V6.1 (abort with ^G) 1> filelib:ensure_dir("test2/foo"). {error,eexist} 2> file:make_dir("test2"). {error,eexist} This happens because eval_read_file_info/2 uses read_link_info/1 instead of read_file_info/1. The file_info type is link instead of folder. Since it really is a folder, it fails to create the new folder with {error, eexist}. 3> file:read_link_info("test2"). {ok,{file_info,5,symlink,read_write, {{2014,6,26},{14,52,45}}, {{2014,6,26},{14,52,45}}, {{2014,6,26},{14,52,45}}, 41453,1,16777220,0,55514582,501,20}} vs 4> file:read_file_info("test2"). {ok,{file_info,102,directory,read_write, {{2014,6,26},{14,53,26}}, {{2014,6,26},{14,53,32}}, {{2014,6,26},{14,53,32}}, 16877,3,16777220,0,55514786,501,20}} -------------- next part -------------- An HTML attachment was scrubbed... URL: From erlangsiri@REDACTED Fri Jun 27 13:31:35 2014 From: erlangsiri@REDACTED (Siri Hansen) Date: Fri, 27 Jun 2014 13:31:35 +0200 Subject: [erlang-bugs] Allow code upgrade for the code_server itself In-Reply-To: References: Message-ID: Hi Stavros! 2014-06-23 11:48 GMT+02:00 Stavros Aronis : a lot of time has passed indeed, and I have put in place a different kind > of instrumentation, which works for what I want to do. Unfortunately I > currently don't have the time to test again, but I suspect that the issue > remains, for the reasons I explained. > Yes, I assume nothing has changed - my point was that when receiving a change_code system message, code_server does a qualified call to system_code_change. This is where the actual code change is expected to happen - not in the call to system_continue at line 184. I would think that the reason that sys uses a qualified call is that the module in question is not ?MODULE, but rather a callback. > > Here is another bug, admittedly unrelated (since I am not trying to update > the code of the code_server *process*): > > 1) Copied code_server.erl to my home directory and added an > "erlang:display(foo)" call before the single erlang:load_module/1 call in > the module. > 2) Run the following: > $ erlc code_server.erl > $ erl -nostick > Erlang/OTP 17 [erts-6.0] [source-07b8f44] [64-bit] [smp:8:8] > [async-threads:10] [hipe] [kernel-poll:false] > > Eshell V6.0 (abort with ^G) > 1> l(code_server). > {module,code_server} > 2> code:which(code_server). > "/home/stavros/code_server.beam" > 3> erlang:check_old_code(code_server). > true > 4> code:soft_purge(code_server). > true > 5> l(te *TAB* > Crash dump was written to: erl_crash.dump > Internal error: Invalid reference count found on #Fun: > About to erase fun still referred by code. > Aborted > > I would expect the soft_purge to fail and the system not to crash. > Yes, I would also expect that. And I can not reproduce the problem :( $ erlc code_server.erl $ erl -nostick Erlang/OTP 17 [erts-6.0] [source-07b8f44] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] Eshell V6.0 (abort with ^G) 1> l(code_server). {module,code_server} 2> code:which(code_server). "/home/siri/code_server.beam" 3> erlang:check_old_code(code_server). true 4> code:soft_purge(code_server). false I also have 5> erlang:check_process_code(whereis(code_server),code_server). true Do you have any other patches, or is it a plain 17.0? (Sorry - I don't have any other ideas right now :( ) /siri > > On Thu, Jun 19, 2014 at 11:26 AM, Siri Hansen > wrote: > >> Hi Stavros, I'm sorry for the very long delay! Are you still struggling >> with this problem or did you find a way around it? Would a code_change >> system message while the process is suspended possibly solve the problem? >> Regards >> /siri >> >> >> 2014-03-10 23:02 GMT+01:00 Stavros Aronis : >> >>> Hello! >>> >>> I am playing around with code instrumentation and trying to hack the >>> code server so that it applies some transformation whenever it loads *any* >>> module. The hack itself is relatively simple: >>> >>> 1) Instrument and reload any already loaded modules (come to think about >>> it, during this process more modules may be loaded, but let's assume a >>> fixpoint). This is to avoid the case where in order to load A, you have to >>> instrument A, and the instrumenter itself needs a call to X, which is not >>> yet loaded so you have to load X, so you have to instrument X, etc... >>> 2) Get the Core Erlang code of the codeserver and wrap the second >>> argument of erlang:load_module (Line 1264) with a call to my instrumenter >>> (which is a function from binary() -> binary()) >>> 3) Load the patched code_server code >>> 4) Move the code_server process from the old code to the new one. >>> >>> I am having trouble with the last step. As far as I understand it, the >>> reason is that the call to system_continue (Line 184) is not qualified, as >>> is the similar call in sys.erl (Line 324). >>> >>> Is there a reason why this is so? Is there any possibility for this to >>> be patched? >>> >>> Cheers, >>> >>> Stavros >>> >>> >>> _______________________________________________ >>> erlang-bugs mailing list >>> erlang-bugs@REDACTED >>> http://erlang.org/mailman/listinfo/erlang-bugs >>> >>> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From aronisstav@REDACTED Fri Jun 27 14:11:16 2014 From: aronisstav@REDACTED (Stavros Aronis) Date: Fri, 27 Jun 2014 14:11:16 +0200 Subject: [erlang-bugs] Allow code upgrade for the code_server itself In-Reply-To: References: Message-ID: Hi Siri! You are right. I had a modification on the actual code_server.erl, which I hadn't removed when generating the previous report. With a clean R17 I cannot reproduce it so apologies for the false alarm. Back to the main topic, this sequence does not seem to work either, as the code_server is still stuck in old code: ~$ diff ~/git/otp/lib/kernel/src/code_server.erl ~/code_server.erl 1263a1264 > erlang:display(foo), ~$ erlc code_server.erl ~$ erl -nostick Erlang/OTP 17 [erts-6.0] [source-07b8f44] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] Eshell V6.0 (abort with ^G) 1> l(code_server). {module,code_server} 2> code:which(code_server). "/home/stavros/code_server.beam" 3> erlang:check_old_code(code_server). true 4> code:soft_purge(code_server). false 5> erlang:check_process_code(whereis(code_server),code_server). true 6> sys:suspend(code_server). ok 7> sys:change_code(code_server, code_server, ignored, ignored). ok 8> sys:resume(code_server). ok 9> erlang:check_process_code(whereis(code_server),code_server). true Regards, Stavros On Fri, Jun 27, 2014 at 1:31 PM, Siri Hansen wrote: > Hi Stavros! > > 2014-06-23 11:48 GMT+02:00 Stavros Aronis : > > a lot of time has passed indeed, and I have put in place a different kind >> of instrumentation, which works for what I want to do. Unfortunately I >> currently don't have the time to test again, but I suspect that the issue >> remains, for the reasons I explained. >> > > Yes, I assume nothing has changed - my point was that when receiving a > change_code system message, code_server does a qualified call to > system_code_change. This is where the actual code change is expected to > happen - not in the call to system_continue at line 184. > > I would think that the reason that sys uses a qualified call is that the > module in question is not ?MODULE, but rather a callback. > > >> >> Here is another bug, admittedly unrelated (since I am not trying to >> update the code of the code_server *process*): >> >> 1) Copied code_server.erl to my home directory and added an >> "erlang:display(foo)" call before the single erlang:load_module/1 call in >> the module. >> 2) Run the following: >> $ erlc code_server.erl >> $ erl -nostick >> Erlang/OTP 17 [erts-6.0] [source-07b8f44] [64-bit] [smp:8:8] >> [async-threads:10] [hipe] [kernel-poll:false] >> >> Eshell V6.0 (abort with ^G) >> 1> l(code_server). >> {module,code_server} >> 2> code:which(code_server). >> "/home/stavros/code_server.beam" >> 3> erlang:check_old_code(code_server). >> true >> 4> code:soft_purge(code_server). >> true >> 5> l(te *TAB* >> Crash dump was written to: erl_crash.dump >> Internal error: Invalid reference count found on #Fun: >> About to erase fun still referred by code. >> Aborted >> >> I would expect the soft_purge to fail and the system not to crash. >> > > Yes, I would also expect that. And I can not reproduce the problem :( > > $ erlc code_server.erl > $ erl -nostick > Erlang/OTP 17 [erts-6.0] [source-07b8f44] [smp:4:4] [async-threads:10] > [hipe] [kernel-poll:false] > > Eshell V6.0 (abort with ^G) > 1> l(code_server). > {module,code_server} > 2> code:which(code_server). > "/home/siri/code_server.beam" > 3> erlang:check_old_code(code_server). > true > 4> code:soft_purge(code_server). > false > > I also have > 5> erlang:check_process_code(whereis(code_server),code_server). > true > > Do you have any other patches, or is it a plain 17.0? (Sorry - I don't > have any other ideas right now :( ) > > /siri > > >> >> On Thu, Jun 19, 2014 at 11:26 AM, Siri Hansen >> wrote: >> >>> Hi Stavros, I'm sorry for the very long delay! Are you still struggling >>> with this problem or did you find a way around it? Would a code_change >>> system message while the process is suspended possibly solve the problem? >>> Regards >>> /siri >>> >>> >>> 2014-03-10 23:02 GMT+01:00 Stavros Aronis : >>> >>>> Hello! >>>> >>>> I am playing around with code instrumentation and trying to hack the >>>> code server so that it applies some transformation whenever it loads *any* >>>> module. The hack itself is relatively simple: >>>> >>>> 1) Instrument and reload any already loaded modules (come to think >>>> about it, during this process more modules may be loaded, but let's assume >>>> a fixpoint). This is to avoid the case where in order to load A, you have >>>> to instrument A, and the instrumenter itself needs a call to X, which is >>>> not yet loaded so you have to load X, so you have to instrument X, etc... >>>> 2) Get the Core Erlang code of the codeserver and wrap the second >>>> argument of erlang:load_module (Line 1264) with a call to my instrumenter >>>> (which is a function from binary() -> binary()) >>>> 3) Load the patched code_server code >>>> 4) Move the code_server process from the old code to the new one. >>>> >>>> I am having trouble with the last step. As far as I understand it, the >>>> reason is that the call to system_continue (Line 184) is not qualified, as >>>> is the similar call in sys.erl (Line 324). >>>> >>>> Is there a reason why this is so? Is there any possibility for this to >>>> be patched? >>>> >>>> Cheers, >>>> >>>> Stavros >>>> >>>> >>>> _______________________________________________ >>>> erlang-bugs mailing list >>>> erlang-bugs@REDACTED >>>> http://erlang.org/mailman/listinfo/erlang-bugs >>>> >>>> >>> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From louis-philippe.gauthier@REDACTED Fri Jun 27 18:41:25 2014 From: louis-philippe.gauthier@REDACTED (Louis-Philippe Gauthier) Date: Fri, 27 Jun 2014 12:41:25 -0400 Subject: [erlang-bugs] filelib:ensure_dir/1 broken with symlinks In-Reply-To: References: Message-ID: Hi, I'm using this patch which seems to fix my issue. --- lib/stdlib/src/filelib.erl 2014-06-27 12:18:40.000000000 -0400 +++ lib/stdlib/src/filelib.erl 2014-06-27 12:19:22.000000000 -0400 @@ -227,7 +227,7 @@ ok; ensure_dir(F) -> Dir = filename:dirname(F), - case do_is_dir(Dir, file) of + case do_is_dir(Dir, directory) of true -> ok; false when Dir =:= F -> @@ -487,6 +487,8 @@ badpattern(Reason) -> error({badpattern,Reason}). +eval_read_file_info(File, directory) -> + file:read_file_info(File); eval_read_file_info(File, file) -> file:read_link_info(File); eval_read_file_info(File, erl_prim_loader) -> On Fri, Jun 27, 2014 at 6:01 AM, Louis-Philippe Gauthier < louis-philippe.gauthier@REDACTED> wrote: > filelib:ensure_dir/1 is broken when there's a symlink in the path. > > the offending commit: > > > https://github.com/erlang/otp/commit/f11aabdc9fec593c31e6c4f3fa25c1707e9c35df > > e.g. > > ~ $ mkdir test > ~ $ ln -s test test2 > > ~ $ erl > Erlang/OTP 17 [erts-6.1] [source] [64-bit] [smp:4:4] [async-threads:10] > [hipe] [kernel-poll:false] [dtrace] > > Eshell V6.1 (abort with ^G) > 1> filelib:ensure_dir("test2/foo"). > {error,eexist} > > 2> file:make_dir("test2"). > {error,eexist} > > This happens because eval_read_file_info/2 uses read_link_info/1 instead > of read_file_info/1. The file_info type is link instead of folder. > > Since it really is a folder, it fails to create the new folder with > {error, eexist}. > > 3> file:read_link_info("test2"). > {ok,{file_info,5,symlink,read_write, > {{2014,6,26},{14,52,45}}, > {{2014,6,26},{14,52,45}}, > {{2014,6,26},{14,52,45}}, > 41453,1,16777220,0,55514582,501,20}} > > vs > > 4> file:read_file_info("test2"). > {ok,{file_info,102,directory,read_write, > {{2014,6,26},{14,53,26}}, > {{2014,6,26},{14,53,32}}, > {{2014,6,26},{14,53,32}}, > 16877,3,16777220,0,55514786,501,20}} > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jose.valim@REDACTED Fri Jun 27 22:14:42 2014 From: jose.valim@REDACTED (=?UTF-8?Q?Jos=C3=A9_Valim?=) Date: Fri, 27 Jun 2014 22:14:42 +0200 Subject: [erlang-bugs] filelib:ensure_dir/1 broken with symlinks In-Reply-To: References: Message-ID: Unfortunately the commit shown above also seems to have broken: * filelib:is_regular/1 * filelib:is_dir/1 * filelib:is_file/1 As they no longer traverse symlinks and rather return the symlink information. filelib:last_modified/1 and filelib:file_size/1 are likely broken too (basically all functions that use eval_read_file_info/2 besides filelib:wildcard/3). *Jos? Valim* www.plataformatec.com.br Skype: jv.ptec Founder and Lead Developer -------------- next part -------------- An HTML attachment was scrubbed... URL: From n.oxyde@REDACTED Sat Jun 28 12:01:41 2014 From: n.oxyde@REDACTED (Anthony Ramine) Date: Sat, 28 Jun 2014 12:01:41 +0200 Subject: [erlang-bugs] filelib:ensure_dir/1 broken with symlinks In-Reply-To: References: Message-ID: Also, wildcard/2 is broken if passed prim_file, because eval_read_file_info/2?s third clause will still call Mod:read_file_info/1 instead of Mod:read_link_info/1. Wrote a preliminary patch of which I am dubious of its quality, please comment: https://github.com/nox/otp/commit/d3ba773f81ffcef449dbf574ba15824996e7c479 Regards, -- Anthony Ramine Le 27 juin 2014 ? 22:14, Jos? Valim a ?crit : > Unfortunately the commit shown above also seems to have broken: > > * filelib:is_regular/1 > * filelib:is_dir/1 > * filelib:is_file/1 > > As they no longer traverse symlinks and rather return the symlink information. > > filelib:last_modified/1 and filelib:file_size/1 are likely broken too (basically all functions that use eval_read_file_info/2 besides filelib:wildcard/3). > > > Jos? Valim > www.plataformatec.com.br > Skype: jv.ptec > Founder and Lead Developer > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs From magnus@REDACTED Sun Jun 29 16:10:15 2014 From: magnus@REDACTED (Magnus Henoch) Date: Sun, 29 Jun 2014 15:10:15 +0100 Subject: [erlang-bugs] erlang.el mis-indents whole-buffer selection In-Reply-To: (Magnus Henoch's message of "Wed, 28 Aug 2013 16:05:29 +0100") References: Message-ID: Magnus Henoch writes: > Tuncer Ayaz writes: > >> Previously it was just a certain[1] function in rebar.erl which got >> mis-indented when you did a whole-buffer indent, but now there's also >> a second[2] function which gets mis-indented. >> >> In both cases indenting the function itself separately works, and the >> bug happens if you select the whole buffer and indent that with >> erlang.el (C-x C-q). >> >> I'm using Emacs 24.3.1 with latest erlang.el from maint. >> >> Is it possible to fix this in the existing indenter? >> >> [1] https://github.com/rebar/rebar/blob/620c4b01c/src/rebar.erl#L318-L365 >> [2] https://github.com/rebar/rebar/blob/620c4b01c/src/rebar_erlc_compiler.erl#L92-L112 > > It seems like this happens when the code being indented has not yet been > made visible, and thus lazy syntax highlighting has not yet happened. > The syntax table for erlang-mode is unable to handle some combinations > of characters; in particular, when a string ends with a dollar sign (as > in "foo$"), the dollar sign plus the double quote would be treated as a > character constant were it not for some magic regexps in > font-lock-syntactic-keywords. Manually scrolling through the buffer > before reindenting seems to make the problem go away. > > This is less than satisfactory, of course. Looking up online help for > font-lock-syntactic-keywords in a modern Emacs gives: > > This variable is obsolete since 24.1; > use `syntax-propertize-function' instead. > > And the NEWS file for Emacs 24.1 contains: > > *** New variable `syntax-propertize-function'. > This replaces `font-lock-syntactic-keywords' which is now obsolete. > This allows syntax-table properties to be set independently from font-lock: > just call syntax-propertize to make sure the text is propertized. > Together with this new variable come a new hook > syntax-propertize-extend-region-functions, as well as two helper functions: > syntax-propertize-via-font-lock to reuse old font-lock-syntactic-keywords > as-is; and syntax-propertize-rules which provides a new way to specify > syntactic rules. > > This sounds like the right way to solve the problem, though of course > you won't know until you try... While playing with the code, I realised that there's a much simpler solution: explicitly run syntax highlighting before indenting; that way all syntax properties will be set. git fetch git://github.com/legoscia/otp.git fontify-before-indentation https://github.com/legoscia/otp/compare/fontify-before-indentation Regards, Magnus From tuncer.ayaz@REDACTED Sun Jun 29 18:47:19 2014 From: tuncer.ayaz@REDACTED (Tuncer Ayaz) Date: Sun, 29 Jun 2014 18:47:19 +0200 Subject: [erlang-bugs] erlang.el mis-indents whole-buffer selection In-Reply-To: References: Message-ID: On Sun, Jun 29, 2014 at 4:10 PM, Magnus Henoch wrote: > Magnus Henoch writes: > > > Tuncer Ayaz writes: > > > > > Previously it was just a certain[1] function in rebar.erl which > > > got mis-indented when you did a whole-buffer indent, but now > > > there's also a second[2] function which gets mis-indented. > > > > > > In both cases indenting the function itself separately works, > > > and the bug happens if you select the whole buffer and indent > > > that with erlang.el (C-x C-q). > > > > > > I'm using Emacs 24.3.1 with latest erlang.el from maint. > > > > > > Is it possible to fix this in the existing indenter? > > > > > > [1] https://github.com/rebar/rebar/blob/620c4b01c/src/rebar.erl#L318-L365 > > > [2] https://github.com/rebar/rebar/blob/620c4b01c/src/rebar_erlc_compiler.erl#L92-L112 > > > > It seems like this happens when the code being indented has not > > yet been made visible, and thus lazy syntax highlighting has not > > yet happened. The syntax table for erlang-mode is unable to handle > > some combinations of characters; in particular, when a string ends > > with a dollar sign (as in "foo$"), the dollar sign plus the double > > quote would be treated as a character constant were it not for > > some magic regexps in font-lock-syntactic-keywords. Manually > > scrolling through the buffer before reindenting seems to make the > > problem go away. > > > > This is less than satisfactory, of course. Looking up online help > > for font-lock-syntactic-keywords in a modern Emacs gives: > > > > This variable is obsolete since 24.1; > > use `syntax-propertize-function' instead. > > > > And the NEWS file for Emacs 24.1 contains: > > > > *** New variable `syntax-propertize-function'. > > This replaces `font-lock-syntactic-keywords' which is now > > obsolete. This allows syntax-table properties to be set > > independently from font-lock: just call syntax-propertize to > > make sure the text is propertized. Together with this new > > variable come a new hook > > syntax-propertize-extend-region-functions, as well as two helper > > functions: syntax-propertize-via-font-lock to reuse old > > font-lock-syntactic-keywords as-is; and syntax-propertize-rules > > which provides a new way to specify syntactic rules. > > > > This sounds like the right way to solve the problem, though of > > course you won't know until you try... > > While playing with the code, I realised that there's a much simpler > solution: explicitly run syntax highlighting before indenting; that > way all syntax properties will be set. > > git fetch git://github.com/legoscia/otp.git fontify-before-indentation > > https://github.com/legoscia/otp/compare/fontify-before-indentation Nice, thanks Magnus! Does the patch allow me to set (global-font-lock-mode 0) without breaking erlang-mode? From tuncer.ayaz@REDACTED Sun Jun 29 20:10:13 2014 From: tuncer.ayaz@REDACTED (Tuncer Ayaz) Date: Sun, 29 Jun 2014 20:10:13 +0200 Subject: [erlang-bugs] erlang.el mis-indents whole-buffer selection In-Reply-To: References: Message-ID: On Sun, Jun 29, 2014 at 6:47 PM, Tuncer Ayaz wrote: > On Sun, Jun 29, 2014 at 4:10 PM, Magnus Henoch wrote: > > While playing with the code, I realised that there's a much simpler > > solution: explicitly run syntax highlighting before indenting; that > > way all syntax properties will be set. > > > > git fetch git://github.com/legoscia/otp.git fontify-before-indentation > > > > https://github.com/legoscia/otp/compare/fontify-before-indentation > > Nice, thanks Magnus! > > Does the patch allow me to set (global-font-lock-mode 0) without > breaking erlang-mode? I tried your branch, and I still see the same behavior: * rebar_erlc_compiler:clean is mis-indented only when I set (global-font-lock-mode 0) * the multi-line <<"string">> in rebar.erl is mis-indented with and without (global-font-lock-mode 0) From z@REDACTED Sun Jun 29 23:02:25 2014 From: z@REDACTED (Danil Zagoskin) Date: Mon, 30 Jun 2014 01:02:25 +0400 Subject: [erlang-bugs] filelib:ensure_dir/1 and symlink to dir Message-ID: For example, I have a directory "foo" and a symlink "bar" to "foo". While I can access file, I get error trying to ensure_dir: 2> file:read_file("bar/baz"). {ok,<<>>} 3> filelib:ensure_dir("bar/baz"). {error,eexist} This is because filelib:do_is_dir/2 does not expect a symlink to dir. Is it expected behavior or should I submit a patch for that? (This breaks at least lager which does filelib:ensure_dir before opening a log) -- Danil Zagoskin | z@REDACTED -------------- next part -------------- An HTML attachment was scrubbed... URL: From jose.valim@REDACTED Mon Jun 30 21:45:49 2014 From: jose.valim@REDACTED (=?UTF-8?Q?Jos=C3=A9_Valim?=) Date: Mon, 30 Jun 2014 21:45:49 +0200 Subject: [erlang-bugs] filelib:ensure_dir/1 and symlink to dir In-Reply-To: References: Message-ID: Danil, I am assuming you are running on Erlang 17.1. If so, this bug has been reported in a previous thread: http://erlang.org/pipermail/erlang-bugs/2014-June/004465.html *Jos? Valim* www.plataformatec.com.br Skype: jv.ptec Founder and Lead Developer On Sun, Jun 29, 2014 at 11:02 PM, Danil Zagoskin wrote: > For example, I have a directory "foo" and a symlink "bar" to "foo". > While I can access file, I get error trying to ensure_dir: > 2> file:read_file("bar/baz"). > {ok,<<>>} > 3> filelib:ensure_dir("bar/baz"). > {error,eexist} > > This is because filelib:do_is_dir/2 does not expect a symlink to dir. > > Is it expected behavior or should I submit a patch for that? > (This breaks at least lager which does filelib:ensure_dir before opening a > log) > > -- > Danil Zagoskin | z@REDACTED > > _______________________________________________ > erlang-bugs mailing list > erlang-bugs@REDACTED > http://erlang.org/mailman/listinfo/erlang-bugs > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Michael.K.Schmidt@REDACTED Mon Jun 30 22:37:57 2014 From: Michael.K.Schmidt@REDACTED (Michael.K.Schmidt@REDACTED) Date: Mon, 30 Jun 2014 15:37:57 -0500 Subject: [erlang-bugs] SSH Bugs Message-ID: Hi, Does anyone know what the final resolution was with this bug? http://erlang.org/pipermail/erlang-patches/2013-December/004499.html The patch given by Anton Ryabkov seems to address the immediate bug. Is this fix ok? Or is there a better way? With Anton's patch I am able to get this example to run: https://github.com/erlang/otp/blob/maint/lib/ssh/examples/ssh_sample_cli.erl It works with Tera Term as the client, but when I try to use PuTTY I get the following error: "Disconnected: Server protocol violation: unexpected SSH2_MSG_CHANNEL_SUCCESS packet" I believe this worked with PuTTY before R16B03. Did an edge case get missed with this refactor? https://github.com/erlang/otp/commit/68263a48bfbdac4dc219a91f06af3d535d881850 Thanks! Mike _____________________________________________________________________________________ Michael Schmidt | APC by Schneider Electric | End User Business Group - IT Business | United States | Firmware Engineer Phone: +636-300-2300 ext. 11480 | Fax: +636-300-2333 | Mobile: +636-744-6326 Email: michael.k.schmidt@REDACTED | Site: www.schneider-electric.com | Address: 801 Corporate Centre Drive, O'Fallon, MO 63368 *** Please consider the environment before printing this e-mail