New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simple/first run of influxd works on Debian, fails on Windows 10 #5848

Closed
voltagex opened this Issue Feb 26, 2016 · 8 comments

Comments

Projects
None yet
4 participants
@voltagex
Copy link

voltagex commented Feb 26, 2016

Debian (sid):

voltagex@devbox:/media/files/src/go/src/github.com/influxdata/influxdb/build$ ./influxd
2016/02/26 23:52:15 InfluxDB starting, version 0.10.0, branch master, commit ba6186f1992a85559490709dc4aab3653c230855
2016/02/26 23:52:15 Go version go1.5.3, GOMAXPROCS set to 8
2016/02/26 23:52:15 no configuration provided, using default settings
[meta] 2016/02/26 23:52:15 Starting meta service
[meta] 2016/02/26 23:52:15 Listening on HTTP: [::]:8091
[metastore] 2016/02/26 23:52:15 Using data dir: /home/voltagex/.influxdb/meta
[metastore] 2016/02/26 23:52:15 Node at localhost:8088 [Follower]
[metastore] 2016/02/26 23:52:17 Node at localhost:8088 [Leader]. peers=[localhost:8088]
[store] 2016/02/26 23:52:17 Using data dir: /home/voltagex/.influxdb/data
[tsm1wal] 2016/02/26 23:52:17 tsm1 WAL starting with 10485760 segment size
[tsm1wal] 2016/02/26 23:52:17 tsm1 WAL writing to /home/voltagex/.influxdb/wal/_internal/monitor/1
[cacheloader] 2016/02/26 23:52:17 reading file /home/voltagex/.influxdb/wal/_internal/monitor/1/_00001.wal, size 385
[cacheloader] 2016/02/26 23:52:17 reading file /home/voltagex/.influxdb/wal/_internal/monitor/1/_00002.wal, size 0
[handoff] 2016/02/26 23:52:17 Starting hinted handoff service
[monitor] 2016/02/26 23:52:17 'hh' registered for diagnostics monitoring
[handoff] 2016/02/26 23:52:17 Using data dir: /home/voltagex/.influxdb/hh
[subscriber] 2016/02/26 23:52:17 opened service
[monitor] 2016/02/26 23:52:17 Starting monitor system
[monitor] 2016/02/26 23:52:17 'build' registered for diagnostics monitoring
[monitor] 2016/02/26 23:52:17 'runtime' registered for diagnostics monitoring
[monitor] 2016/02/26 23:52:17 'network' registered for diagnostics monitoring
[monitor] 2016/02/26 23:52:17 'system' registered for diagnostics monitoring
[cluster] 2016/02/26 23:52:17 Starting cluster service
[shard-precreation] 2016/02/26 23:52:17 Starting precreation service with check interval of 10m0s, advance period of 30m0s
[snapshot] 2016/02/26 23:52:17 Starting snapshot service
[copier] 2016/02/26 23:52:17 Starting copier service
[admin] 2016/02/26 23:52:17 Starting admin service
[monitor] 2016/02/26 23:52:17 Storing statistics in database '_internal' retention policy '', at interval 10s
[admin] 2016/02/26 23:52:17 Listening on HTTP: [::]:8083
[continuous_querier] 2016/02/26 23:52:17 Starting continuous query service
[httpd] 2016/02/26 23:52:17 Starting HTTP service
[httpd] 2016/02/26 23:52:17 Authentication enabled: false
[httpd] 2016/02/26 23:52:17 Listening on HTTP: [::]:8086
[retention] 2016/02/26 23:52:17 Starting retention policy enforcement service with check interval of 30m0s
2016/02/26 23:52:17 Sending anonymous usage statistics to m.influxdb.com

Windows 10:

C:\Users\Adam>C:\Users\Adam\Downloads\influxd.exe
2016/02/26 23:57:11 InfluxDB starting, version 0.10.0, branch master, commit ba6186f1992a85559490709dc4aab3653c230855
2016/02/26 23:57:11 Go version go1.5.3, GOMAXPROCS set to 8
2016/02/26 23:57:11 no configuration provided, using default settings
[meta] 2016/02/26 23:57:11 Starting meta service
[meta] 2016/02/26 23:57:11 Listening on HTTP: [::]:8091
[metastore] 2016/02/26 23:57:11 Using data dir: C:\Users\Adam\.influxdb\meta
[metastore] 2016/02/26 23:57:11 Node at localhost:8088 [Follower]
[metastore] 2016/02/26 23:57:13 Node at localhost:8088 [Leader]. peers=[localhost:8088]
[metaclient] 2016/02/26 23:57:13 failure getting snapshot from :8091: Get http://:8091?index=0: dial tcp :8091: connectex: The requested address is not valid in its context.
[metaclient] 2016/02/26 23:57:14 failure getting snapshot from :8091: Get http://:8091?index=0: dial tcp :8091: connectex: The requested address is not valid in its context.
[metaclient] 2016/02/26 23:57:15 failure getting snapshot from :8091: Get http://:8091?index=0: dial tcp :8091: connectex: The requested address is not valid in its context.
[metaclient] 2016/02/26 23:57:16 failure getting snapshot from :8091: Get http://:8091?index=0: dial tcp :8091: connectex: The requested address is not valid in its context.
[metaclient] 2016/02/26 23:57:17 failure getting snapshot from :8091: Get http://:8091?index=0: dial tcp :8091: connectex: The requested address is not valid in its context.

(that message is repeated approximately once a second)

I realise I'm meant to write a config file first, but why can I connect to a new instance on Debian but the Windows build seems to crash?

Windows client:

C:\Users\Adam\Downloads>influx
Failed to connect to http://localhost:8086
Please check your connection settings and ensure 'influxd' is running.

Debian client:

voltagex@devbox:/media/files/src/go/src/github.com/influxdata/influxdb/build$ ./influx
Visit https://enterprise.influxdata.com to register for updates, InfluxDB server management, and monitoring.
Connected to http://localhost:8086 version 0.10.0
InfluxDB shell 0.10.0

Both versions built on the Debian sid VM, using build.py with the appropriate --platform

@rossmcdonald

This comment has been minimized.

Copy link
Contributor

rossmcdonald commented Feb 26, 2016

Dupe of #5715

@voltagex Windows is not officially supported at the moment, so it looks like some recent clustering changes pushed to master may not be working. Can you try building from the 0.10.0 release branch instead? Unfortunately the build.py script in the 0.10.0 branch doesn't work with Windows, so you'll have to build manually with:

git checkout 0.10.0
GOOS=windows go build -o influxd.exe ./cmd/influxd
@voltagex

This comment has been minimized.

Copy link

voltagex commented Feb 26, 2016

Sorry, very new at this:

voltagex@devbox:/media/files/src/go/src/github.com/influxdata/influxdb$ git checkout 0.10.0
Branch 0.10.0 set up to track remote branch 0.10.0 from origin.
Switched to a new branch '0.10.0'

voltagex@devbox:/media/files/src/go/src/github.com/influxdata/influxdb$ GOOS=windows go build -o influxd.exe ./cmd/influxd
/home/voltagex/src/go/src/github.com/influxdata/influxdb/cmd/influxd/main.go:15:2: cannot find package "github.com/influxdb/influxdb/cmd/influxd/backup" in any of:
        /usr/lib/go/src/github.com/influxdb/influxdb/cmd/influxd/backup (from $GOROOT)
        /home/voltagex/src/go/src/github.com/influxdb/influxdb/cmd/influxd/backup (from $GOPATH)
/home/voltagex/src/go/src/github.com/influxdata/influxdb/cmd/influxd/main.go:16:2: cannot find package "github.com/influxdb/influxdb/cmd/influxd/help" in any of:
        /usr/lib/go/src/github.com/influxdb/influxdb/cmd/influxd/help (from $GOROOT)
        /home/voltagex/src/go/src/github.com/influxdb/influxdb/cmd/influxd/help (from $GOPATH)
/home/voltagex/src/go/src/github.com/influxdata/influxdb/cmd/influxd/main.go:17:2: cannot find package "github.com/influxdb/influxdb/cmd/influxd/restore" in any of:
        /usr/lib/go/src/github.com/influxdb/influxdb/cmd/influxd/restore (from $GOROOT)
        /home/voltagex/src/go/src/github.com/influxdb/influxdb/cmd/influxd/restore (from $GOPATH)
/home/voltagex/src/go/src/github.com/influxdata/influxdb/cmd/influxd/main.go:18:2: cannot find package "github.com/influxdb/influxdb/cmd/influxd/run" in any of:
        /usr/lib/go/src/github.com/influxdb/influxdb/cmd/influxd/run (from $GOROOT)
        /home/voltagex/src/go/src/github.com/influxdb/influxdb/cmd/influxd/run (from $GOPATH)

If my build host is Debian, that version of build.py still won't work?

Edit: just noticed the dupe - this looked different enough to warrant another issue. Oops.

@rossmcdonald

This comment has been minimized.

Copy link
Contributor

rossmcdonald commented Feb 26, 2016

@voltagex No need to apologize. That was actually my fault, I forgot that the 0.10.0 branch still used the old repository naming convention, so it's a little more complicated than I had originally thought:

mkdir -p $GOPATH/src/github.com/influxdb
cd $GOPATH/src/github.com/influxdb
git clone https://github.com/influxdb/influxdb
cd influxdb
git checkout 0.10.0
GOOS=windows go get -d ./...
GOOS=windows go build -o influxd.exe ./cmd/influxd

Regarding:

If my build host is Debian, that version of build.py still won't work?

That's correct. I pushed some changes to the build script yesterday that re-enabled Windows builds, but those changes are not available in the 0.10.0 branch.

@voltagex

This comment has been minimized.

Copy link

voltagex commented Feb 26, 2016

Different crash - there's no other influxd running to cause a file lock like this:

2016/02/27 01:49:40 InfluxDB starting, version 0.9, branch unknown, commit unknown, built unknown
2016/02/27 01:49:40 Go version go1.5.3, GOMAXPROCS set to 8
2016/02/27 01:49:40 no configuration provided, using default settings
[meta] 2016/02/27 01:49:40 Starting meta service
[meta] 2016/02/27 01:49:40 Listening on HTTP: 127.0.0.1:8091
[metastore] 2016/02/27 01:49:40 Using data dir: C:\Users\Adam\.influxdb\meta
[metastore] 2016/02/27 01:49:40 Node at localhost:8088 [Follower]
[metastore] 2016/02/27 01:49:41 Node at localhost:8088 [Leader]. peers=[localhost:8088]
[meta] 2016/02/27 01:49:42 127.0.0.1 - - [27/Feb/2016:01:49:42 +1100] GET /?index=0 HTTP/1.1 200 70 - Go-http-client/1.1 2b794034-dc98-11e5-8001-000000000000 499.3µs
[meta] 2016/02/27 01:49:42 127.0.0.1 - - [27/Feb/2016:01:49:42 +1100] POST /execute HTTP/1.1 200 28 - Go-http-client/1.1 2b797ad0-dc98-11e5-8002-000000000000 2.0022ms
[meta] 2016/02/27 01:49:42 127.0.0.1 - - [27/Feb/2016:01:49:42 +1100] GET /?index=2 HTTP/1.1 200 76 - Go-http-client/1.1 2b7a173a-dc98-11e5-8003-000000000000 0
run: open server: rename C:\Users\Adam\.influxdb\meta\node.jsontmp C:\Users\Adam\.influxdb\meta\node.json: The process cannot access the file because it is being used by another process.

Not sure why it's referring to 0.9 here either, I built using your commands.

Thanks for your help - It's getting late here, happy to do more tests tomorrow (GMT+11).

If Windows isn't a high priority I can use a VM for now - just thought it was worth a try because it was easy to cross compile.

@rossmcdonald

This comment has been minimized.

Copy link
Contributor

rossmcdonald commented Feb 26, 2016

@voltagex The version 0.9 was hard-coded (it's been removed, but not in the 0.10.0 branch), so that can be ignored. I can't say I've ever seen this error before, though:

run: open server: rename C:\Users\Adam\.influxdb\meta\node.jsontmp C:\Users\Adam\.influxdb\meta\node.json: The process cannot access the file because it is being used by another process.

Unfortunately Windows support is a bit flakey at the moment, so I'd recommend using Debian for now. We are planning on improving Windows support over the coming months, though, so it should be getting better soon. Also, if Windows is important to your use-case, then commenting here would help us get it prioritized correctly.

@mvadu

This comment has been minimized.

Copy link
Contributor

mvadu commented Feb 27, 2016

@voltagex @rossmcdonald for latest code to work on windows, you just need to change the config.

  1. Generate a new config file using influx config > infludb.conf
  2. Edit the [meta] section, update http-bind-address to contain the host name http-bind-address = "BATMAN-G750:8091"
  3. Run the exe with the config file influx.exe -config influxdb.conf

Now it should boot up just fine!

@rossmcdonald

This comment has been minimized.

Copy link
Contributor

rossmcdonald commented Mar 1, 2016

@mvadu Thanks for the update!

@voltagex I'm going to go ahead and close this issue, but please comment here if you continue to run into issues.

@sarkershantonu

This comment has been minimized.

Copy link

sarkershantonu commented Mar 5, 2016

I fixed this issue simply by adding localhost under [meta]
bind-address = "localhost:8088"
http-bind-address = "localhost:8091"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment