Skip to content
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

Files and GeoPoints not correctly saved in ParseConfig since Parse Server version 2.2.7 #2103

Closed
sidiabale opened this issue Jun 19, 2016 · 15 comments

Comments

@sidiabale
Copy link

Issue Description

Files and GeoPoints created in ParseConfig are saved with incorrect types. Types change to String and Array respectively after a refresh.

Steps to reproduce

  1. Open Parse dashboard >> Config >> Create Parameter
  2. Create a parameter of type "File" having any name and select an arbitrary image
  3. Upon creation, parameter shows correct type and image can be opened
  4. Upon refreshing the page, the data type changes to string and image can no longer be opened!

For GeoPoint, select type "GeoPoint" in step 2 and enter any valid latitude and longitude. In step 4, type changes to array after refreshing.

Expected Results

Sample result from parse.com or Parse Server version 2.2.6

 {
    "params": {
      "backgroundImage": {
        "__type": "File",
        "name": "tfss-0086e03d-660f-4a53-bee1-6dfb0e1d6906-Tulips.jpg",
        "url": "http://files.parsetfss.com/9499f1cb-d3b8-4514-aa10-05659741bacc/tfss-0086e03d-660f-4a53-bee1-6dfb0e1d6906-Tulips.jpg"
      },
      "eventLocation": {
        "__type": "GeoPoint",
        "latitude": 37.79215,
        "longitude": -122.390335
      }
    }
}

Actual Outcome

{
    "params": {
      "backgroundImage": "ca58066b323f840fbad7e27c88976d9d_tfss-0086e03d-660f-4a53-bee1-6dfb0e1d6906-Tulips.jpg",
      "eventLocation": [
        "-122.390335",
        "37.79215"
      ]
    }
}

Environment Setup

  • Server
    • parse-server version: 2.2.7 <= version <= 2.2.13 (last worked normally in 2.2.6
    • Operating System: ?
    • Hardware: ?
    • Localhost or remote server? (AWS, Heroku, Azure, Digital Ocean, etc): Reproduced on openshift and back4apps
  • Database
    • MongoDB version: Tested with 3.2.4 and 3.2.6
    • Storage engine: ?
    • Hardware: ?
    • Localhost or remote server? (AWS, mLab, ObjectRocket, Digital Ocean, etc): MongoDB@localhost

Logs/Trace

You can turn on additional logging by configuring VERBOSE=1 in your environment.

Not available

@jeleed
Copy link

jeleed commented Jul 20, 2016

Seconded. Having the exact same issue using Server v. 2.2.16 and Dashboard v. 1.0.14.

@vanityx69
Copy link

Thirded, same versions of both Server and Dashboard.

@flovilmart
Copy link
Contributor

Can you provide the logs when running with VERBOSE=1 on parse-server ?

@jeleed
Copy link

jeleed commented Jul 20, 2016

I have attempted to activate logging in the past but have been so far unsuccessful; whenever I attempt to use verbose = 1 the server crashes and no logs are created. It's quite probable that I am still doing it wrong, despite having read and tried every bit of advice from every available thread about it. Also, I'm also not sure exactly in what folder the logs are stored, .

Could you point me to clear and explicit instructions on how to activate logs when using parse via express?

@jeleed
Copy link

jeleed commented Jul 26, 2016

Update for anyone interested:

This definitely appears to be a bug with the dashboard. When saving a file it is saved in the _GlobalConfig table as a straight-up text value:

"testfile": "15601629111b645b72af4e6e987fbac5_fileGlobalThemeJson.json"

Compare this to the correct value as it is stored in the official Parse site:

"testfile": { "__type": "File", "name": "15601629111b645b72af4e6e987fbac5_fileGlobalThemeJson.json", "url": "http://files.mydomain.com/bae9a4c2-ad5c-4eb6-8a02-4ca46d5b56f0/15601629111b645b72af4e6e987fbac5_fileGlobalThemeJson.json" }

The above came over to my parse database via the migration utility. I have also confirmed that the above value is being properly sent from /lib/Routers/GlobaConfigRouter.js but my trail went cold when I got caught up in a tangle of nested calls not helped by my utter ignorance of nodejs.

As a workaround for now I enter the file via the dashboard, then manually modify its newly created record directly in the database with the proper information. I only have a few files so no big deal but hopefully this issue gets addressed eventually.

@hramos
Copy link
Contributor

hramos commented Sep 6, 2016

@jeleed is there anything we need to fix in Parse Server, or is this something we need to address in the Dashboard?

@jeleed
Copy link

jeleed commented Sep 6, 2016

@hramos to the best of my knowledge this is strictly an issue with the dashboard. Once the file information is stored correctly in the database (currently via a manual process) everything operates as it should.

The problem is with the dashboard saving file type config parameters as text instead of files. See previous post for details.

@flovilmart
Copy link
Contributor

Can you post the request from the dashboard being made (snapshot of the chrome inspector)

@hramos hramos closed this as completed Nov 29, 2016
@sidiabale
Copy link
Author

@hramos I'm still facing this problem though you closed the issue without explanation. What is the status?

@hramos
Copy link
Contributor

hramos commented Jan 3, 2017

@sidiabale I closed the issue after 2.5 months of no activity. See above, where @flovilmart asked for more details back on September 6.

@sidiabale
Copy link
Author

@hramos You're right, the issue fell off my radar but I'm now available. Can you please reopen it?
@flovilmart Can you clarify what exactly you want?

@hramos hramos reopened this Jan 18, 2017
@sidiabale
Copy link
Author

@flovilmart What information do you need from me to further debug this issue?

@flovilmart
Copy link
Contributor

Probably some screenshots of the chrome inspector requests responses as it seems to be a dashboard issue. Also can you open it on the dashboard repository instead?

@sidiabale
Copy link
Author

@flovilmart Here are the screenshots (1) before uploading (2) after uploading but before refreshing - correct file type (3) File --> string after refreshing
2103-1

2103-2

2103-3

@sidiabale
Copy link
Author

This issue was moved to parse-community/parse-dashboard#642

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants