MTrain Upgrade/datafix: distribution_mean and reward_lick_count

Open
#601 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
15/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
yaml

Research direction

The issue names mtrain_api, visual_behavior_analysis, allensdk, and the mtrain_regimen YAML files, but no specific source files or tests. Start by mapping the dependency, ORM, deployment, migration, and ETL checklist items across those components. Done means completing the listed schema and data changes, dependency and version releases, and blue/green deployments.

Written by the indexing model from the issue text.

Description

behavior braintv Epic

While round-tripping the extended_data_frame out of the MTrain webservice, I discovered that the column "distribution_mean" on the trials table in the database has a datatype that is improperly set (currently is int, should be float).

Correcting this bug will require:

  • Refactor dependencies out of visual_behavior_analysis

    • Release visual_behavior_analysis 0.6.1
    • Move to allensdk 1.0.0.dev8 and release to artifactory
  • An upgrade to the MTrain Service

    • Patch mtrain_api
      • Change ORM: distribution_mean
      • Change ORM: reward_lick_count
      • Upgrade dependency visual_behavior 0.3.0 --> 0.6.1
      • bumpversion: 0.3.0.dev0 --> 0.3.1
    • Deploy 0.3.1 to green for staging
  • A database migration datafix on the these columns

    • schema change trials/distribution_mean int --> float
    • schema change trials/reward_lick_count float --> int
    • data ETL from the mtrain_regimen yaml files to population the column
  • Transfer 0.3.1 to blue

Dominant language
Jupyter Notebook
Stars
398
Forks
163
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from AllenInstitute/AllenSDK

All issues in AllenInstitute/AllenSDK

Similar issues

More Backend & API Design issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.