Git Product home page Git Product logo

cloudcoder's Introduction

cloudcoder's People

Contributors

daveho avatar jspacco avatar satgarcia avatar sbonner1 avatar snim2 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cloudcoder's Issues

Error when registering students

java -jar cloudcoderApp-v0.1.0.jar registerstudents
For which course would you like to register students?
0 - CCDemo - CloudCoder demo course
[Enter value in range 0..0] 0
Enter the name of the file containing a tab-separated list student registration entries in this format:
username firstname lastname email password section
Usernames in the datbase will be re-used, but the names/email/password will not be updated,and users will not be registered for a course if they are already registered
[default: ] ==> test
Note that this may be a slow operation
Some logging results will be appended to logs/cloudcoder.log rather than echoed to stdout
java.lang.IllegalArgumentException: Unsupported conversion from java.lang.Integer to java.lang.String
at org.cloudcoder.app.server.persist.util.DBUtil.convertValue(DBUtil.java:820)
at org.cloudcoder.app.server.persist.util.DBUtil.loadModelObjectFields(DBUtil.java:926)
at org.cloudcoder.app.server.persist.util.DBUtil.loadModelObjectFields(DBUtil.java:908)
at org.cloudcoder.app.server.persist.util.ConfigurationUtil.getUsersInCourse(ConfigurationUtil.java:455)
at org.cloudcoder.app.server.persist.util.ConfigurationUtil.registerStudentsForCourseId2(ConfigurationUtil.java:391)
at org.cloudcoder.app.server.persist.RegisterStudents.registerStudents(RegisterStudents.java:49)
at org.cloudcoder.app.server.persist.RegisterStudents.main(RegisterStudents.java:18)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.cloudcoder.jetty.NestedJarClassLoader.runMain(NestedJarClassLoader.java:107)
at org.cloudcoder.jetty.WebServer.runAdminCommand(WebServer.java:99)
at org.cloudcoder.jetty.WebServer.handleCommand(WebServer.java:86)
at org.cloudcoder.webserver.CloudCoderWebServer.main(CloudCoderWebServer.java:61)
Database error: Unsupported conversion from java.lang.Integer to java.lang.String

The test file content are as follows :
test1 test1 test1 [email protected] jango 101

Database error when registering students

I've been trying to register a test student. My install is done and seems to work properly but I wanted to look at it from a student's perspective before my semester starts. My studentID file has only one line (with tabs between each field):
test firstName lastName [email protected] password 1

I keep getting the following error when trying to register this test student:

java.lang.IllegalArgumentException: Unsupported conversion from java.lang.Integer to java.lang.String
at org.cloudcoder.app.server.persist.util.DBUtil.convertValue(DBUtil.java:820)
at org.cloudcoder.app.server.persist.util.DBUtil.loadModelObjectFields(DBUtil.java:926)
at org.cloudcoder.app.server.persist.util.DBUtil.loadModelObjectFields(DBUtil.java:908)
at org.cloudcoder.app.server.persist.util.ConfigurationUtil.getUsersInCourse(ConfigurationUtil.java:455)
at org.cloudcoder.app.server.persist.util.ConfigurationUtil.registerStudentsForCourseId2(ConfigurationUtil.java:391)
at org.cloudcoder.app.server.persist.RegisterStudents.registerStudents(RegisterStudents.java:49)
at org.cloudcoder.app.server.persist.RegisterStudents.main(RegisterStudents.java:18)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.cloudcoder.jetty.NestedJarClassLoader.runMain(NestedJarClassLoader.java:107)
at org.cloudcoder.jetty.WebServer.runAdminCommand(WebServer.java:99)
at org.cloudcoder.jetty.WebServer.handleCommand(WebServer.java:86)
at org.cloudcoder.webserver.CloudCoderWebServer.main(CloudCoderWebServer.java:61)
Database error: Unsupported conversion from java.lang.Integer to java.lang.String

Not sure what to do next. Any ideas?

report best submission completed on time

When a CloudCoder problem is assigned for credit and has a due
date, the instructor will need to get the best submission completed
by the submission deadline.

One idea: in problem stats page, add an "ontime submissions"
checkbox. If checked, only ontime submissions are considered.

health monitoring infrastructure

Now that we have the Health servlet that reports data about
connected builder threads and submission queue size, we need a
monitor that can alert us (by sending email) in the case that
a webapp has no connected builders, or has excessive submission
queue size, etc.

NPE in Builder2.java

Saw this stacktrace after leaving the builder running in Eclipse
overnight (without a webapp to connect to):

2013-02-08 00:49:34,956 NoConnectTimer ERROR - Cannot connect to CloudCoder server (last connection about 29179 seconds ago)
Exception in thread "Thread-0" java.lang.NullPointerException
at org.cloudcoder.builder2.server.Builder2.safeReadObject(Builder2.java:223)
at org.cloudcoder.builder2.server.Builder2.run(Builder2.java:92)
at java.lang.Thread.run(Thread.java:679)

Need to investigate. Race condition?

submit exercise throws exception on demo webapp

Got an exception containing the following trying to submit an exercise
to the repository using the demo webapp:

java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory

did we forget to include commons logging?

"playground mode" for writing code that is not tied to an exercise

Students can write general-purpose code that is NOT tied to a particular exercise, and the system will execute the code and capture the results

Some issues:

  • "Submit" button should now say "Execute" or "Go"
  • How to handle stdin? Upload a file? A separate editor window where you enter inputs? Truly interactive execution and communication between the Builder and the client through the browser?
  • How to elegantly disable GUI features?

Allow alphanumeric section "numbers"

Please allow alphanumeric section "numbers".

Our school uses alphanumeric section identifiers, but attempting to create a course with section, for example, of "T1" results in:

Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:616)
    at org.cloudcoder.jetty.NestedJarClassLoader.runMain(Unknown Source)
    at org.cloudcoder.jetty.WebServer.runAdminCommand(Unknown Source)
    at org.cloudcoder.jetty.WebServer.handleCommand(Unknown Source)
    at org.cloudcoder.webserver.CloudCoderWebServer.main(CloudCoderWebServer.java:61)
Caused by: java.lang.NumberFormatException: For input string: "T1"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Integer.parseInt(Integer.java:481)
    at java.lang.Integer.parseInt(Integer.java:514)
    at org.cloudcoder.app.server.persist.util.ConfigurationUtil.askInt(ConfigurationUtil.java:71)
    at org.cloudcoder.app.server.persist.CreateCourse.main(CreateCourse.java:78)
    ... 8 more

keep track of which exercises have been shared

In the problem admin page, there should be a checkmark next to the
exercises that have been shared to the repository. This will make
it easy for instructors to see which exercises haven't been shared yet.

keystore.password=changeit ... how to change it?

Doing

java -jar cloudcoderApp-v0.0.9.jar listconfig

shows the config entry

cloudcoder.submitsvc.ssl.keystore.password=changeit

for both the webapp and builder. Is this something that needs changing post-install? If so, how?

Flaky selection of the last problem in the list

In the "Problems in CCDemo - CloudCoder demo course" page, selection of the last problem in the list is flaky (sometimes I am able to select it, but can't explain exactly when).
For now, I just add a "dummy" problem, and that way, I am able to select the last but one and then go on to edit it.

cloudcoder issue

clean up user account page

Various issues with the user account page:

  • need to select a course before can click on "My Account"
  • UI is somewhat confusing (need to click on own name
    before buttons work)
  • no way to see progress in course, submissions

Actual output not shown in CPLUSPLUS_FUNCTION test results

The "Actual" column in CPLUSPLUS_FUNCTION test output is unpopulated (see picture). Actual output is important feedback for students to improve their code.

Missing Actual column

If you can give me some pointers I can try to look into this, if no developers are available.

webapp: allow exercise list to be refreshed

In the webapp, CoursesAndProblemsPage2 should allow the list
of problems/submission receipts to be refreshed. This would be useful,
for example, if the instructor is giving a quiz, since it would allow
the students to see the quiz once the quiz is started.

Steps for Cloud Coder Software Installation

Hi Dave,

I am new to Programming and I want to build Online Compiler for my upcoming website. Further, I followed all your steps mentioned in your Repo:

  1. UsingEC2 - How to set up an Amazon EC2 server to run CloudCoder.
  2. Bootstrap - Setting up a new CloudCoder installation on an Ubuntu or Debian Linux server: read this first.
  3. CloudCoder has been successfully installed.

But still I am not able to see anything. Please find my link below

https://ec2-54-169-99-181.ap-southeast-1.compute.amazonaws.com/cloudcoder

I am stuck at this point, how I should move forward please assist further.

Thanks in advance.

daemon-0.7.jar is not available on aws.

The file https://s3.amazonaws.com/org.cloudcoder.daemon.binaries/daemon-0.7.jar is not found by AWS. Running ./fetchdeps.pl fails.

Fetching https://s3.amazonaws.com/org.cloudcoder.daemon.binaries/daemon-0.7.jar...
--2014-08-21 10:48:00--  https://s3.amazonaws.com/org.cloudcoder.daemon.binaries/daemon-0.7.jar
Resolving s3.amazonaws.com... 176.32.99.56
Connecting to s3.amazonaws.com|176.32.99.56|:443... connected.
HTTP request sent, awaiting response... 403 Forbidden
2014-08-21 10:48:00 ERROR 403: Forbidden.

Bulk registering of users is extremely slow

Bulk register of users, either through the webapp or the command-line, is really slow and doesn't use a transaction. It's so slow that the webapp will time out before it finishes.

logging additional details when builder cannot connect to the webapp

When the builder cannot connect to the webapp, we should log additional information about why it cannot connect. Right now we get:

2013-03-27 12:52:07,736 WebappSocketFactory INFO - Builder: using keystore keystore.jks
2013-03-27 12:52:07,740 ThreadGroupSecurityManager INFO - ThreadGroupSecurityManager created
2013-03-27 12:52:07,755 Builder2Daemon INFO - Builder starting
2013-03-27 12:52:07,755 Builder2Daemon INFO - appHost=CloudCoderWeb2
2013-03-27 12:52:07,756 Builder2Daemon INFO - appPort=47374
2013-03-27 12:52:07,757 Builder2Daemon INFO - numThreads=2
2013-03-27 12:53:11,114 NoConnectTimer ERROR - Cannot connect to CloudCoder server

It might be nice to know more details so that we can better diagnose problems with client installations.

Cannot start web app and builder

The instructions here on the wiki

say "Start CloudCoder webapp and builder. Right-click on the Builder2.java in the CloudCoderBuilder2 project (it's in the package that ends with .server) and choose Run As โ†’ Java Application; ". In my Eclipse (Juno) there is no run configuration for Builder2.java. There is one for Builder2Server.java, but that gives a Connection Refused exception:

Running the builder interactively (type "shutdown" to quit)
2013-08-15 21:45:43,412 Builder2Daemon WARN  - Could not load cloudcoder.properties, using default config properties
2013-08-15 21:45:43,481 WebappSocketFactory INFO  - Builder: using keystore defaultkeystore.jks
2013-08-15 21:45:43,484 ThreadGroupSecurityManager INFO  - ThreadGroupSecurityManager created
2013-08-15 21:45:43,498 Builder2Daemon INFO  - Builder starting
2013-08-15 21:45:43,498 Builder2Daemon INFO  - appHost=localhost
2013-08-15 21:45:43,503 Builder2Daemon INFO  - appPort=47374
2013-08-15 21:45:43,503 Builder2Daemon INFO  - numThreads=2
2013-08-15 21:45:43,672 NoConnectTimer ERROR - Cannot connect to CloudCoder server
java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:579)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618)
    at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:407)
    at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:88)
    at org.cloudcoder.builder2.server.WebappSocketFactory.connectToWebapp(WebappSocketFactory.java:147)
    at org.cloudcoder.builder2.server.Builder2Server.createSecureSocket(Builder2Server.java:148)
    at org.cloudcoder.builder2.server.Builder2Server.attemptToConnectToServer(Builder2Server.java:154)
    at org.cloudcoder.builder2.server.Builder2Server.runOnce(Builder2Server.java:95)
    at org.cloudcoder.builder2.server.Builder2Server.run(Builder2Server.java:84)
    at java.lang.Thread.run(Thread.java:724)
2013-08-15 21:45:43,672 NoConnectTimer ERROR - Cannot connect to CloudCoder server
java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:579)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618)
    at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:407)
    at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:88)
    at org.cloudcoder.builder2.server.WebappSocketFactory.connectToWebapp(WebappSocketFactory.java:147)
    at org.cloudcoder.builder2.server.Builder2Server.createSecureSocket(Builder2Server.java:148)
    at org.cloudcoder.builder2.server.Builder2Server.attemptToConnectToServer(Builder2Server.java:154)
    at org.cloudcoder.builder2.server.Builder2Server.runOnce(Builder2Server.java:95)
    at org.cloudcoder.builder2.server.Builder2Server.run(Builder2Server.java:84)
    at java.lang.Thread.run(Thread.java:724)
2013-08-15 21:45:48,681 NoConnectTimer ERROR - Cannot connect to CloudCoder server (last connection about 5 seconds ago)
java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:579)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618)
    at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:407)
    at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:88)
    at org.cloudcoder.builder2.server.WebappSocketFactory.connectToWebapp(WebappSocketFactory.java:147)
    at org.cloudcoder.builder2.server.Builder2Server.createSecureSocket(Builder2Server.java:148)
    at org.cloudcoder.builder2.server.Builder2Server.attemptToConnectToServer(Builder2Server.java:154)
    at org.cloudcoder.builder2.server.Builder2Server.runOnce(Builder2Server.java:95)
    at org.cloudcoder.builder2.server.Builder2Server.run(Builder2Server.java:84)
    at java.lang.Thread.run(Thread.java:724)
2013-08-15 21:45:48,685 NoConnectTimer ERROR - Cannot connect to CloudCoder server (last connection about 5 seconds ago)
java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:579)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618)
    at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:407)
    at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:88)
    at org.cloudcoder.builder2.server.WebappSocketFactory.connectToWebapp(WebappSocketFactory.java:147)
    at org.cloudcoder.builder2.server.Builder2Server.createSecureSocket(Builder2Server.java:148)
    at org.cloudcoder.builder2.server.Builder2Server.attemptToConnectToServer(Builder2Server.java:154)
    at org.cloudcoder.builder2.server.Builder2Server.runOnce(Builder2Server.java:95)
    at org.cloudcoder.builder2.server.Builder2Server.run(Builder2Server.java:84)
    at java.lang.Thread.run(Thread.java:724)
2013-08-15 21:45:58,693 NoConnectTimer ERROR - Cannot connect to CloudCoder server (last connection about 15 seconds ago)
java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:579)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618)
    at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:407)
    at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:88)
    at org.cloudcoder.builder2.server.WebappSocketFactory.connectToWebapp(WebappSocketFactory.java:147)
    at org.cloudcoder.builder2.server.Builder2Server.createSecureSocket(Builder2Server.java:148)
    at org.cloudcoder.builder2.server.Builder2Server.attemptToConnectToServer(Builder2Server.java:154)
    at org.cloudcoder.builder2.server.Builder2Server.runOnce(Builder2Server.java:95)
    at org.cloudcoder.builder2.server.Builder2Server.run(Builder2Server.java:84)
    at java.lang.Thread.run(Thread.java:724)
2013-08-15 21:45:58,700 NoConnectTimer ERROR - Cannot connect to CloudCoder server (last connection about 15 seconds ago)
java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:579)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618)
    at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:407)
    at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:88)
    at org.cloudcoder.builder2.server.WebappSocketFactory.connectToWebapp(WebappSocketFactory.java:147)
    at org.cloudcoder.builder2.server.Builder2Server.createSecureSocket(Builder2Server.java:148)
    at org.cloudcoder.builder2.server.Builder2Server.attemptToConnectToServer(Builder2Server.java:154)
    at org.cloudcoder.builder2.server.Builder2Server.runOnce(Builder2Server.java:95)
    at org.cloudcoder.builder2.server.Builder2Server.run(Builder2Server.java:84)
    at java.lang.Thread.run(Thread.java:724)
2013-08-15 21:46:58,743 NoConnectTimer ERROR - Cannot connect to CloudCoder server (last connection about 75 seconds ago)
java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:579)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618)
    at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:407)
    at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:88)
    at org.cloudcoder.builder2.server.WebappSocketFactory.connectToWebapp(WebappSocketFactory.java:147)
    at org.cloudcoder.builder2.server.Builder2Server.createSecureSocket(Builder2Server.java:148)
    at org.cloudcoder.builder2.server.Builder2Server.attemptToConnectToServer(Builder2Server.java:154)
    at org.cloudcoder.builder2.server.Builder2Server.runOnce(Builder2Server.java:95)
    at org.cloudcoder.builder2.server.Builder2Server.run(Builder2Server.java:84)
    at java.lang.Thread.run(Thread.java:724)
2013-08-15 21:46:58,747 NoConnectTimer ERROR - Cannot connect to CloudCoder server (last connection about 75 seconds ago)
java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:579)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618)
    at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:407)
    at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:88)
    at org.cloudcoder.builder2.server.WebappSocketFactory.connectToWebapp(WebappSocketFactory.java:147)
    at org.cloudcoder.builder2.server.Builder2Server.createSecureSocket(Builder2Server.java:148)
    at org.cloudcoder.builder2.server.Builder2Server.attemptToConnectToServer(Builder2Server.java:154)
    at org.cloudcoder.builder2.server.Builder2Server.runOnce(Builder2Server.java:95)
    at org.cloudcoder.builder2.server.Builder2Server.run(Builder2Server.java:84)
    at java.lang.Thread.run(Thread.java:724)

Did I miss a step somewhere?!

registerstudents: Unknown column 'courseId'

Hey guys, I'm trying to load a tab-separated roster as described in the wiki, and I got a MySQLSyntaxErrorException. Here's the transcript:

$ java -jar cloudcoderApp-v0.0.7.1.jar registerstudents
For which course would you like to register students?
0 - CCDemo - CloudCoder demo course
1 - CS102 - Programming 1
[Enter value in range 0..1] 1
Enter the name of the file containing a tab-separated list student registration entries in this format: 
username        firstname       lastname        email   password        section
Usernames in the datbase will be re-used, but the names/email/password will not be updated,and users will not be registered for a course if they are already registered
[default: ] ==> /home/ubuntu/cloudcoder-accounts.csv
Note that this may be a slow operation
Some logging results will be appended to logs/cloudcoder.log rather than echoed to stdout
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'courseId' in 'where clause'
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
        at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
        at com.mysql.jdbc.Util.getInstance(Util.java:386)
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3597)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3529)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1990)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2151)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2625)
        at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2119)
        at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2281)
        at org.cloudcoder.app.server.persist.ConfigurationUtil.getUsersInCourse(Unknown Source)
        at org.cloudcoder.app.server.persist.ConfigurationUtil.registerStudentsForCourseId2(Unknown Source)
        at org.cloudcoder.app.server.persist.RegisterStudents.registerStudents(Unknown Source)
        at org.cloudcoder.app.server.persist.RegisterStudents.main(Unknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:616)
        at org.cloudcoder.jetty.NestedJarClassLoader.runMain(Unknown Source)
        at org.cloudcoder.jetty.WebServer.runAdminCommand(Unknown Source)
        at org.cloudcoder.jetty.WebServer.handleCommand(Unknown Source)
        at org.cloudcoder.webserver.CloudCoderWebServer.main(CloudCoderWebServer.java:61)
Database error: Unknown column 'courseId' in 'where clause'

I checked out the schema in MySQL to see how the column was specified there, and it seems to be course_id:

mysql> describe cc_course_registrations;
+-------------------+---------+------+-----+---------+----------------+
| Field             | Type    | Null | Key | Default | Extra          |
+-------------------+---------+------+-----+---------+----------------+
| id                | int(11) | NO   | PRI | NULL    | auto_increment |
| course_id         | int(11) | NO   |     | NULL    |                |
| user_id           | int(11) | NO   |     | NULL    |                |
| registration_type | int(11) | NO   |     | NULL    |                |
| section           | int(11) | NO   |     | NULL    |                |
+-------------------+---------+------+-----+---------+----------------+
5 rows in set (0.00 sec)

I'm probably going to set up a dev environment shortly, so I can occasionally push patches into my live environment. Thanks for the help!

Refactor due dates out of each "problem" and into "assignment"

Currently a problem includes both a date when it was assigned, and a date when it is due. This precludes multiple concurrent courses sharing the same exercises with different deadlines, and makes it difficult to group problems together.

We should factor the due date out of a problem, and add assignments that have their own start/end deadlines, as well as a list of problems in the assignment.

Note that this requires changes to the database as well as a new workflow for creating and editing assignments.

support direct link to exercise

It should be possible to link directly to an exercise.

One idea is to use an anchor (#foo/bar/baz) on the URL,
have the webapp check for this, and navigate automatically to
the development mode to work on that exercise (once the
user has logged in.)

C/C++ - Can't use "iostream"

I have succesfully installed the webapp/builder and everything works fine.
But when I want to include the iostream lib there is the error note "Error compiling submission" after I press the Submit! button.
"stdio.h" works fine.

Ordering of problems is given by unchangeable ID

The ordering of problems is both in students and advisors view given by the ID. The ID of the problem is is automatically created and can not be changed afterwards.

Sometimes you want to create a new problem that should be listed in between existing ones. Currently this can not be done. My proposal is: Either let the user decide how he wants to sort the list of problems or sort the list by name, not by ID.

Themes

How to change the theme of cloudcoder working area background...? Pls update me soon...

Thanks
R.Asaithambi

Error in test Submission :no Builders found

When I submit the test then it shows the error like "No builders found ".
Note :I run this application in local machine(Linux) both webapp and builder in same machine..

Please help me to go further step...

Thanks.

better reporting of python runtime errors

If a NameError occurs when executing a python test, this is really
closer to a compiler error than a test failure, and it would be nice
to report it as such.

I shoehorned in reporting in the "Message" column (which we really
don't want for python function exercises), but this makes all of
the columns too narrow, is ugly, etc.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.