-
Notifications
You must be signed in to change notification settings - Fork 2
Milestone M3
Andrew Figueroa edited this page Jun 9, 2018
·
22 revisions
This page lists the goals and tasks for ClassDB Milestone M3. Tasks completed in this milestone contribute to release/version 2.x (exact version number TBD).
Please attempt to add documentation as issues are fixed and features are added.
Please add tasks to lists in appropriate section. If a list or a section does not exist, add it. Choose a task to work on and write your last name at the end of the task text in bold. When the task is complete, place a check mark the task's list item.
- Add issues
- Review comments to PR 150 for possible issues
- Address issues marked for this milestone (no need to re-list issues here)
Design
- Possible use of OIDs to more reliably manage users, schemas, and other objects
- Upon some research, there seems to be a potential issue with using OIDs as identifiers: they are likely to change if a server/DB is restored from a backup, since they depend on the order that objects (including non-ClassDB objects) are first created. - Figueroa
- Teams -- Figueroa (A Wiki page will be created to describe teams)
Database
- ER Schema
-
addRoleBaseMgmt.sql
- Table
RoleBase
--Murthy
- Table
-
addUserMgmt.sql
- Tables
DDLActivity
andConnectionActivity
- Views
User
andTeam
- Tables
-
addClassDBRolesMgmt.sql
- Views
Instructor
,Student
, andDBManager
- Views
Core Functions
-
addRoleBaseMgmt.sql
-
createRole
-
revokeClassDBRole
-
dropRole
-
GroupRole-specific Functions
-
addClassDBRolesMgmt.sql
- Functions for teams
Other Functions
- Prohibit
DROP SCHEMA
with DDL trigger
Connection logging
- Log disconnections (log_disconnections)
- Add functions
isConnectionLoggingEnabled
andisLoggingCollectorEnabled
to return the current state of connectionlog_connections
andlogging_collector
respectively
DDL logging
- Add function
isDDLoggingEnabled
to return the current state of DDL logging
- Ensure any new functions / objects are removed from a ClassDB database
- Team management
- Remove
ClassDB.PostgresLog
(now a temporary table) - Remove
ClassDB.importConnectionLog(DATE)
(return type changed)